diff --git a/.config/lychee.toml b/.config/lychee.toml
index 200521ac41eeb739228d202ac0fb2d80be305464..733b77ec0cff9e616ecc0f851d9a3ed5e8574636 100644
--- a/.config/lychee.toml
+++ b/.config/lychee.toml
@@ -2,9 +2,9 @@
# Run with `lychee -c .config/lychee.toml ./**/*.rs ./**/*.prdoc`
cache = true
-max_cache_age = "1d"
+max_cache_age = "10d"
max_redirects = 10
-max_retries = 6
+max_retries = 3
# Exclude localhost et.al.
exclude_all_private = true
@@ -51,4 +51,7 @@ exclude = [
# Behind a captcha (code 403):
"https://iohk.io/en/blog/posts/2023/11/03/partner-chains-are-coming-to-cardano/",
"https://www.reddit.com/r/rust/comments/3spfh1/does_collect_allocate_more_than_once_while/",
+ # 403 rate limited:
+ "https://etherscan.io/block/11090290",
+ "https://substrate.stackexchange.com/.*",
]
diff --git a/.config/taplo.toml b/.config/taplo.toml
index f5d0b7021ba898ea3ab96323fa3fbc4efdd7b307..2c6ccfb2b34440686764c39ed6db1c73ed940f06 100644
--- a/.config/taplo.toml
+++ b/.config/taplo.toml
@@ -2,10 +2,12 @@
# ignore zombienet as they do some deliberate custom toml stuff
exclude = [
+ "bridges/testing/**",
"cumulus/zombienet/**",
"polkadot/node/malus/integrationtests/**",
"polkadot/zombienet_tests/**",
"substrate/zombienet/**",
+ "target/**",
]
# global rules
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index fdaa0c8628f766e241ba9043698b611a0bd78811..4fc5b97caae0735058337c8b23e4ca7471761d24 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -13,7 +13,7 @@
# - Multiple owners are supported.
# - Either handle (e.g, @github_user or @github/team) or email can be used. Keep in mind,
# that handles might work better because they are more recognizable on GitHub,
-# eyou can use them for mentioning unlike an email.
+# you can use them for mentioning unlike an email.
# - The latest matching rule, if multiple, takes precedence.
# CI
diff --git a/.github/scripts/check-prdoc.py b/.github/scripts/check-prdoc.py
new file mode 100644
index 0000000000000000000000000000000000000000..42b063f2885da148033986dfa49740f2b0416460
--- /dev/null
+++ b/.github/scripts/check-prdoc.py
@@ -0,0 +1,71 @@
+#!/usr/bin/env python3
+
+'''
+Ensure that the prdoc files are valid.
+
+# Example
+
+```sh
+python3 -m pip install cargo-workspace
+python3 .github/scripts/check-prdoc.py Cargo.toml prdoc/*.prdoc
+```
+
+Produces example output:
+```pre
+🔎 Reading workspace polkadot-sdk/Cargo.toml
+📦 Checking 32 prdocs against 493 crates.
+✅ All prdocs are valid
+```
+'''
+
+import os
+import yaml
+import argparse
+import cargo_workspace
+
+def check_prdoc_crate_names(root, paths):
+ '''
+ Check that all crates of the `crates` section of each prdoc is present in the workspace.
+ '''
+
+ print(f'🔎 Reading workspace {root}.')
+ workspace = cargo_workspace.Workspace.from_path(root)
+ crate_names = [crate.name for crate in workspace.crates]
+
+ print(f'📦 Checking {len(paths)} prdocs against {len(crate_names)} crates.')
+ faulty = {}
+
+ for path in paths:
+ with open(path, 'r') as f:
+ prdoc = yaml.safe_load(f)
+
+ for crate in prdoc.get('crates', []):
+ crate = crate['name']
+ if crate in crate_names:
+ continue
+
+ faulty.setdefault(path, []).append(crate)
+
+ if len(faulty) == 0:
+ print('✅ All prdocs are valid.')
+ else:
+ print('❌ Some prdocs are invalid.')
+ for path, crates in faulty.items():
+ print(f'💥 {path} lists invalid crate: {", ".join(crates)}')
+ exit(1)
+
+def parse_args():
+ parser = argparse.ArgumentParser(description='Check prdoc files')
+ parser.add_argument('root', help='The cargo workspace manifest', metavar='root', type=str, nargs=1)
+ parser.add_argument('prdoc', help='The prdoc files', metavar='prdoc', type=str, nargs='*')
+ args = parser.parse_args()
+
+ if len(args.prdoc) == 0:
+ print('❌ Need at least one prdoc file as argument.')
+ exit(1)
+
+ return { 'root': os.path.abspath(args.root[0]), 'prdocs': args.prdoc }
+
+if __name__ == '__main__':
+ args = parse_args()
+ check_prdoc_crate_names(args['root'], args['prdocs'])
diff --git a/.github/scripts/check-workspace.py b/.github/scripts/check-workspace.py
index fb3b53acb0c564c2880d58c51a86e627d8945e35..1f8f103e4e157a8c1c804a618652741193ca5a00 100644
--- a/.github/scripts/check-workspace.py
+++ b/.github/scripts/check-workspace.py
@@ -18,7 +18,7 @@ def parse_args():
parser.add_argument('workspace_dir', help='The directory to check', metavar='workspace_dir', type=str, nargs=1)
parser.add_argument('--exclude', help='Exclude crate paths from the check', metavar='exclude', type=str, nargs='*', default=[])
-
+
args = parser.parse_args()
return (args.workspace_dir[0], args.exclude)
@@ -26,7 +26,8 @@ def main(root, exclude):
workspace_crates = get_members(root, exclude)
all_crates = get_crates(root, exclude)
print(f'📦 Found {len(all_crates)} crates in total')
-
+
+ check_duplicates(workspace_crates)
check_missing(workspace_crates, all_crates)
check_links(all_crates)
@@ -47,14 +48,14 @@ def get_members(workspace_dir, exclude):
if not 'members' in root_manifest['workspace']:
return []
-
+
members = []
for member in root_manifest['workspace']['members']:
if member in exclude:
print(f'❌ Excluded member should not appear in the workspace {member}')
sys.exit(1)
members.append(member)
-
+
return members
# List all members of the workspace.
@@ -73,12 +74,12 @@ def get_crates(workspace_dir, exclude_crates) -> dict:
with open(path, "r") as f:
content = f.read()
manifest = toml.loads(content)
-
+
if 'workspace' in manifest:
if root != workspace_dir:
print("⏩ Excluded recursive workspace at %s" % path)
continue
-
+
# Cut off the root path and the trailing /Cargo.toml.
path = path[len(workspace_dir)+1:-11]
name = manifest['package']['name']
@@ -86,9 +87,19 @@ def get_crates(workspace_dir, exclude_crates) -> dict:
print("⏩ Excluded crate %s at %s" % (name, path))
continue
crates[name] = (path, manifest)
-
+
return crates
+# Check that there are no duplicate entries in the workspace.
+def check_duplicates(workspace_crates):
+ print(f'🔎 Checking for duplicate crates')
+ found = {}
+ for path in workspace_crates:
+ if path in found:
+ print(f'❌ crate is listed twice in the workspace {path}')
+ sys.exit(1)
+ found[path] = True
+
# Check that all crates are in the workspace.
def check_missing(workspace_crates, all_crates):
print(f'🔎 Checking for missing crates')
@@ -127,23 +138,23 @@ def check_links(all_crates):
if not 'path' in deps[dep]:
broken.append((name, dep_name, "crate must be linked via `path`"))
return
-
+
def check_crate(deps):
to_checks = ['dependencies', 'dev-dependencies', 'build-dependencies']
for to_check in to_checks:
if to_check in deps:
check_deps(deps[to_check])
-
+
# There could possibly target dependant deps:
if 'target' in manifest:
# Target dependant deps can only have one level of nesting:
for _, target in manifest['target'].items():
check_crate(target)
-
+
check_crate(manifest)
-
+
links.sort()
broken.sort()
diff --git a/.github/scripts/common/lib.sh b/.github/scripts/common/lib.sh
index bd12d9c6e6ff773f8513189a381d725243e53eb5..f844e962c41def7625fa3d45ae3cbf81ecb57147 100755
--- a/.github/scripts/common/lib.sh
+++ b/.github/scripts/common/lib.sh
@@ -237,6 +237,61 @@ fetch_release_artifacts() {
popd > /dev/null
}
+# Fetch the release artifacts like binary and signatures from S3. Assumes the ENV are set:
+# - RELEASE_ID
+# - GITHUB_TOKEN
+# - REPO in the form paritytech/polkadot
+fetch_release_artifacts_from_s3() {
+ echo "Version : $VERSION"
+ echo "Repo : $REPO"
+ echo "Binary : $BINARY"
+ OUTPUT_DIR=${OUTPUT_DIR:-"./release-artifacts/${BINARY}"}
+ echo "OUTPUT_DIR : $OUTPUT_DIR"
+
+ URL_BASE=$(get_s3_url_base $BINARY)
+ echo "URL_BASE=$URL_BASE"
+
+ URL_BINARY=$URL_BASE/$VERSION/$BINARY
+ URL_SHA=$URL_BASE/$VERSION/$BINARY.sha256
+ URL_ASC=$URL_BASE/$VERSION/$BINARY.asc
+
+ # Fetch artifacts
+ mkdir -p "$OUTPUT_DIR"
+ pushd "$OUTPUT_DIR" > /dev/null
+
+ echo "Fetching artifacts..."
+ for URL in $URL_BINARY $URL_SHA $URL_ASC; do
+ echo "Fetching %s" "$URL"
+ curl --progress-bar -LO "$URL" || echo "Missing $URL"
+ done
+
+ pwd
+ ls -al --color
+ popd > /dev/null
+
+}
+
+# Pass the name of the binary as input, it will
+# return the s3 base url
+function get_s3_url_base() {
+ name=$1
+ case $name in
+ polkadot | polkadot-execute-worker | polkadot-prepare-worker | staking-miner)
+ printf "https://releases.parity.io/polkadot"
+ ;;
+
+ polkadot-parachain)
+ printf "https://releases.parity.io/cumulus"
+ ;;
+
+ *)
+ printf "UNSUPPORTED BINARY $name"
+ exit 1
+ ;;
+ esac
+}
+
+
# Check the checksum for a given binary
function check_sha256() {
echo "Checking SHA256 for $1"
@@ -248,13 +303,11 @@ function check_sha256() {
function import_gpg_keys() {
GPG_KEYSERVER=${GPG_KEYSERVER:-"keyserver.ubuntu.com"}
SEC="9D4B2B6EB8F97156D19669A9FF0812D491B96798"
- WILL="2835EAF92072BC01D188AF2C4A092B93E97CE1E2"
EGOR="E6FC4D4782EB0FA64A4903CCDB7D3555DD3932D3"
- MARA="533C920F40E73A21EEB7E9EBF27AEA7E7594C9CF"
MORGAN="2E92A9D8B15D7891363D1AE8AF9E6C43F7F8C4CF"
echo "Importing GPG keys from $GPG_KEYSERVER in parallel"
- for key in $SEC $WILL $EGOR $MARA $MORGAN; do
+ for key in $SEC $EGOR $MORGAN; do
(
echo "Importing GPG key $key"
gpg --no-tty --quiet --keyserver $GPG_KEYSERVER --recv-keys $key
@@ -316,7 +369,7 @@ function relative_parent() {
# used as Github Workflow Matrix. This call is exposed by the `scan` command and can be used as:
# podman run --rm -it -v /.../fellowship-runtimes:/build docker.io/chevdor/srtool:1.70.0-0.11.1 scan
function find_runtimes() {
- libs=($(git grep -I -r --cached --max-depth 20 --files-with-matches 'construct_runtime!' -- '*lib.rs'))
+ libs=($(git grep -I -r --cached --max-depth 20 --files-with-matches '[frame_support::runtime]!' -- '*lib.rs'))
re=".*-runtime$"
JSON=$(jq --null-input '{ "include": [] }')
@@ -344,3 +397,50 @@ function find_runtimes() {
done
echo $JSON
}
+
+# Filter the version matches the particular pattern and return it.
+# input: version (v1.8.0 or v1.8.0-rc1)
+# output: none
+filter_version_from_input() {
+ version=$1
+ regex="(^v[0-9]+\.[0-9]+\.[0-9]+)$|(^v[0-9]+\.[0-9]+\.[0-9]+-rc[0-9]+)$"
+
+ if [[ $version =~ $regex ]]; then
+ if [ -n "${BASH_REMATCH[1]}" ]; then
+ echo "${BASH_REMATCH[1]}"
+ elif [ -n "${BASH_REMATCH[2]}" ]; then
+ echo "${BASH_REMATCH[2]}"
+ fi
+ else
+ echo "Invalid version: $version"
+ exit 1
+ fi
+
+}
+
+# Check if the release_id is valid number
+# input: release_id
+# output: release_id or exit 1
+check_release_id() {
+ input=$1
+
+ release_id=$(echo "$input" | sed 's/[^0-9]//g')
+
+ if [[ $release_id =~ ^[0-9]+$ ]]; then
+ echo "$release_id"
+ else
+ echo "Invalid release_id from input: $input"
+ exit 1
+ fi
+
+}
+
+# Get latest release tag
+#
+# input: none
+# output: latest_release_tag
+get_latest_release_tag() {
+ TOKEN="Authorization: Bearer $GITHUB_TOKEN"
+ latest_release_tag=$(curl -s -H "$TOKEN" $api_base/paritytech/polkadot-sdk/releases/latest | jq -r '.tag_name')
+ printf $latest_release_tag
+}
diff --git a/.github/workflows/auto-add-parachain-issues.yml b/.github/workflows/auto-add-parachain-issues.yml
new file mode 100644
index 0000000000000000000000000000000000000000..6b5222b6ff74147b063d913ec0dcdec299a6fcea
--- /dev/null
+++ b/.github/workflows/auto-add-parachain-issues.yml
@@ -0,0 +1,30 @@
+# If there are new issues related to the async backing feature,
+# add it to the parachain team's board and set a custom "meta" field.
+
+name: Add selected issues to Parachain team board
+on:
+ issues:
+ types:
+ - labeled
+
+jobs:
+ add-parachain-issues:
+ if: github.event.label.name == 'T16-async_backing'
+ runs-on: ubuntu-latest
+ steps:
+ - name: Generate token
+ id: generate_token
+ uses: tibdex/github-app-token@v2.1.0
+ with:
+ app_id: ${{ secrets.PROJECT_APP_ID }}
+ private_key: ${{ secrets.PROJECT_APP_KEY }}
+ - name: Sync issues
+ uses: paritytech/github-issue-sync@v0.3.2
+ with:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ PROJECT_TOKEN: ${{ steps.generate_token.outputs.token }}
+ project: 119 # Parachain team board
+ project_field: 'meta'
+ project_value: 'async backing'
+ labels: |
+ T16-async_backing
diff --git a/.github/workflows/check-labels.yml b/.github/workflows/check-labels.yml
index 97562f0da09569931582864bd764e6724900d619..1d1a8770058d33ba5e449c6a2e8b307e0ff02eb7 100644
--- a/.github/workflows/check-labels.yml
+++ b/.github/workflows/check-labels.yml
@@ -9,14 +9,6 @@ jobs:
check-labels:
runs-on: ubuntu-latest
steps:
- - name: Skip merge queue
- if: ${{ contains(github.ref, 'gh-readonly-queue') }}
- run: exit 0
- - name: Pull image
- env:
- IMAGE: paritytech/ruled_labels:0.4.0
- run: docker pull $IMAGE
-
- name: Check labels
env:
IMAGE: paritytech/ruled_labels:0.4.0
@@ -28,6 +20,16 @@ jobs:
RULES_PATH: labels/ruled_labels
CHECK_SPECS: "specs_polkadot-sdk.yaml"
run: |
+ if [ ${{ github.ref }} == "refs/heads/master" ]; then
+ echo "Skipping master"
+ exit 0
+ fi
+ if [ $(echo ${{ github.ref }} | grep -c "gh-readonly-queue") -eq 1 ]; then
+ echo "Skipping merge queue"
+ exit 0
+ fi
+
+ docker pull $IMAGE
echo "REPO: ${REPO}"
echo "GITHUB_PR: ${GITHUB_PR}"
diff --git a/.github/workflows/check-licenses.yml b/.github/workflows/check-licenses.yml
index e1e92d288ceae235d23fa36c31d592092fe8b0ba..c32b6fcf89e06bb56cefc0517e1dcab1d1ef0f37 100644
--- a/.github/workflows/check-licenses.yml
+++ b/.github/workflows/check-licenses.yml
@@ -42,5 +42,4 @@ jobs:
shopt -s globstar
npx @paritytech/license-scanner scan \
--ensure-licenses ${{ env.LICENSES }} \
- --exclude ./substrate/bin/node-template \
-- ./substrate/**/*.rs
diff --git a/.github/workflows/check-links.yml b/.github/workflows/check-links.yml
index 903d7a3fcb3d94bb6913d94627418d9212397bf3..58065f369c9cf160b0b94c233df9df1016426d07 100644
--- a/.github/workflows/check-links.yml
+++ b/.github/workflows/check-links.yml
@@ -3,8 +3,8 @@ name: Check links
on:
pull_request:
paths:
- - "*.rs"
- - "*.prdoc"
+ - "**.rs"
+ - "**.prdoc"
- ".github/workflows/check-links.yml"
- ".config/lychee.toml"
types: [opened, synchronize, reopened, ready_for_review]
diff --git a/.github/workflows/check-prdoc.yml b/.github/workflows/check-prdoc.yml
index f47404744a49b86735b584e5c0f84bda3fe3078e..c31dee06ec54a0154efc3ad46ff24c79de4d0d7b 100644
--- a/.github/workflows/check-prdoc.yml
+++ b/.github/workflows/check-prdoc.yml
@@ -17,31 +17,25 @@ env:
jobs:
check-prdoc:
runs-on: ubuntu-latest
+ if: github.event.pull_request.number != ''
steps:
+ - name: Checkout repo
+ uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 #v4.1.1
# we cannot show the version in this step (ie before checking out the repo)
# due to https://github.com/paritytech/prdoc/issues/15
- - name: Skip merge queue
- if: ${{ contains(github.ref, 'gh-readonly-queue') }}
- run: exit 0
- - name: Pull image
+ - name: Check if PRdoc is required
+ id: get-labels
run: |
echo "Pulling $IMAGE"
$ENGINE pull $IMAGE
- - name: Check if PRdoc is required
- id: get-labels
- run: |
# Fetch the labels for the PR under test
echo "Fetch the labels for $API_BASE/${REPO}/pulls/${GITHUB_PR}"
labels=$( curl -H "Authorization: token ${GITHUB_TOKEN}" -s "$API_BASE/${REPO}/pulls/${GITHUB_PR}" | jq '.labels | .[] | .name' | tr "\n" ",")
echo "Labels: ${labels}"
echo "labels=${labels}" >> "$GITHUB_OUTPUT"
- - name: Checkout repo
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 #v4.1.1
-
- - name: Check PRDoc version
- run: |
+ echo "Checking PRdoc version"
$ENGINE run --rm -v $PWD:/repo $IMAGE --version
- name: Early exit if PR is silent
@@ -62,4 +56,12 @@ jobs:
run: |
echo "Checking for PR#${GITHUB_PR}"
echo "You can find more information about PRDoc at $PRDOC_DOC"
- $ENGINE run --rm -v $PWD:/repo $IMAGE check -n ${GITHUB_PR}
+ $ENGINE run --rm -v $PWD:/repo -e RUST_LOG=info $IMAGE check -n ${GITHUB_PR}
+
+ - name: Validate prdoc for PR#${{ github.event.pull_request.number }}
+ if: ${{ !contains(steps.get-labels.outputs.labels, 'R0') }}
+ run: |
+ echo "Validating PR#${GITHUB_PR}"
+ python3 --version
+ python3 -m pip install cargo-workspace==1.2.1
+ python3 .github/scripts/check-prdoc.py Cargo.toml prdoc/pr_${GITHUB_PR}.prdoc
diff --git a/.github/workflows/check-workspace.yml b/.github/workflows/check-workspace.yml
index 3dd812d7d9b3743062553b700adba9d6abd93c50..81ec311ccce8153d7a28f68ff801cc917c8d1fd9 100644
--- a/.github/workflows/check-workspace.yml
+++ b/.github/workflows/check-workspace.yml
@@ -2,8 +2,6 @@ name: Check workspace
on:
pull_request:
- paths:
- - "*.toml"
merge_group:
jobs:
@@ -19,5 +17,5 @@ jobs:
run: >
python3 .github/scripts/check-workspace.py .
--exclude
- "substrate/frame/contracts/fixtures/build"
+ "substrate/frame/contracts/fixtures/build"
"substrate/frame/contracts/fixtures/contracts/common"
diff --git a/.github/workflows/fmt-check.yml b/.github/workflows/fmt-check.yml
index 99ac5120097d1d888b0c9207621433cc93a950c2..efcf278c46e83630a54fae3de01d0c9e19304dee 100644
--- a/.github/workflows/fmt-check.yml
+++ b/.github/workflows/fmt-check.yml
@@ -15,7 +15,7 @@ jobs:
os: ["ubuntu-latest"]
runs-on: ${{ matrix.os }}
container:
- image: paritytech/ci-unified:bullseye-1.74.0-2023-11-01-v20231204
+ image: docker.io/paritytech/ci-unified:bullseye-1.75.0-2024-01-22-v20240109
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
diff --git a/.github/workflows/gitspiegel-trigger.yml b/.github/workflows/gitspiegel-trigger.yml
index b338f7a3f6254b9db628f8b2b45c88b8094ef390..01058ad74d0b71385a8096964ea6c779fc6f4869 100644
--- a/.github/workflows/gitspiegel-trigger.yml
+++ b/.github/workflows/gitspiegel-trigger.yml
@@ -13,14 +13,15 @@ on:
- unlocked
- ready_for_review
- reopened
+ # doesn't work as intended, triggers "workflow_run" webhook in any case
# the job doesn't check out any code, so it is relatively safe to run it on any event
- pull_request_target:
- types:
- - opened
- - synchronize
- - unlocked
- - ready_for_review
- - reopened
+ # pull_request_target:
+ # types:
+ # - opened
+ # - synchronize
+ # - unlocked
+ # - ready_for_review
+ # - reopened
merge_group:
# drop all permissions for GITHUB_TOKEN
diff --git a/.github/workflows/release-30_publish_release_draft.yml b/.github/workflows/release-30_publish_release_draft.yml
new file mode 100644
index 0000000000000000000000000000000000000000..12891ef70af36b4e848c68e292f9ba2881ee20d2
--- /dev/null
+++ b/.github/workflows/release-30_publish_release_draft.yml
@@ -0,0 +1,155 @@
+name: Release - Publish draft
+
+on:
+ push:
+ tags:
+ # Catches v1.2.3 and v1.2.3-rc1
+ - v[0-9]+.[0-9]+.[0-9]+*
+
+ workflow_dispatch:
+ inputs:
+ version:
+ description: Current release/rc version
+
+jobs:
+ get-rust-versions:
+ runs-on: ubuntu-latest
+ outputs:
+ rustc-stable: ${{ steps.get-rust-versions.outputs.stable }}
+ steps:
+ - id: get-rust-versions
+ run: |
+ RUST_STABLE_VERSION=$(curl -sS https://raw.githubusercontent.com/paritytech/scripts/master/dockerfiles/ci-unified/Dockerfile | grep -oP 'ARG RUST_STABLE_VERSION=\K[^ ]+')
+ echo "stable=$RUST_STABLE_VERSION" >> $GITHUB_OUTPUT
+
+ build-runtimes:
+ uses: "./.github/workflows/srtool.yml"
+ with:
+ excluded_runtimes: "substrate-test bp cumulus-test kitchensink minimal-template parachain-template penpal polkadot-test seedling shell frame-try sp solochain-template"
+
+ publish-release-draft:
+ runs-on: ubuntu-latest
+ needs: [get-rust-versions, build-runtimes]
+ outputs:
+ release_url: ${{ steps.create-release.outputs.html_url }}
+ asset_upload_url: ${{ steps.create-release.outputs.upload_url }}
+ steps:
+ - name: Checkout
+ uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
+
+ - name: Prepare tooling
+ run: |
+ URL=https://github.com/chevdor/tera-cli/releases/download/v0.2.4/tera-cli_linux_amd64.deb
+ wget $URL -O tera.deb
+ sudo dpkg -i tera.deb
+ tera --version
+
+ - name: Download artifacts
+ uses: actions/download-artifact@c850b930e6ba138125429b7e5c93fc707a7f8427 # v4.1.4
+
+ - name: Prepare draft
+ id: draft
+ env:
+ RUSTC_STABLE: ${{ needs.get-rust-versions.outputs.rustc-stable }}
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ ASSET_HUB_ROCOCO_DIGEST: ${{ github.workspace}}/asset-hub-rococo-runtime/asset-hub-rococo-srtool-digest.json
+ ASSET_HUB_WESTEND_DIGEST: ${{ github.workspace}}/asset-hub-westend-runtime/asset-hub-westend-srtool-digest.json
+ BRIDGE_HUB_ROCOCO_DIGEST: ${{ github.workspace}}/bridge-hub-rococo-runtime/bridge-hub-rococo-srtool-digest.json
+ BRIDGE_HUB_WESTEND_DIGEST: ${{ github.workspace}}/bridge-hub-westend-runtime/bridge-hub-westend-srtool-digest.json
+ COLLECTIVES_WESTEND_DIGEST: ${{ github.workspace}}/collectives-westend-runtime/collectives-westend-srtool-digest.json
+ CONTRACTS_ROCOCO_DIGEST: ${{ github.workspace}}/contracts-rococo-runtime/contracts-rococo-srtool-digest.json
+ CORETIME_ROCOCO_DIGEST: ${{ github.workspace}}/coretime-rococo-runtime/coretime-rococo-srtool-digest.json
+ CORETIME_WESTEND_DIGEST: ${{ github.workspace}}/coretime-westend-runtime/coretime-westend-srtool-digest.json
+ GLUTTON_WESTEND_DIGEST: ${{ github.workspace}}/glutton-westend-runtime/glutton-westend-srtool-digest.json
+ PEOPLE_ROCOCO_DIGEST: ${{ github.workspace}}/people-rococo-runtime/people-rococo-srtool-digest.json
+ PEOPLE_WESTEND_DIGEST: ${{ github.workspace}}/people-westend-runtime/people-westend-srtool-digest.json
+ ROCOCO_DIGEST: ${{ github.workspace}}/rococo-runtime/rococo-srtool-digest.json
+ WESTEND_DIGEST: ${{ github.workspace}}/westend-runtime/westend-srtool-digest.json
+ run: |
+ . ./.github/scripts/common/lib.sh
+
+ export REF1=$(get_latest_release_tag)
+ if [[ -z "${{ inputs.version }}" ]]; then
+ export REF2="${{ github.ref }}"
+ else
+ export REF2="${{ inputs.version }}"
+ fi
+ echo "REL_TAG=$REF2" >> $GITHUB_ENV
+ export VERSION=$(echo "$REF2" | sed -E 's/^v([0-9]+\.[0-9]+\.[0-9]+).*$/\1/')
+
+ ./scripts/release/build-changelogs.sh
+
+ echo "Checking the folder state"
+ pwd
+ ls -la scripts/release
+
+ - name: Archive artifact context.json
+ uses: actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3 # v4.3.1
+ with:
+ name: release-notes-context
+ path: |
+ scripts/release/context.json
+ **/*-srtool-digest.json
+
+ - name: Create draft release
+ id: create-release
+ uses: actions/create-release@0cb9c9b65d5d1901c1f53e5e66eaf4afd303e70e # v1.1.4
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ with:
+ tag_name: ${{ env.REL_TAG }}
+ release_name: Polkadot ${{ env.REL_TAG }}
+ body_path: ${{ github.workspace}}/scripts/release/RELEASE_DRAFT.md
+ draft: true
+
+ publish-runtimes:
+ needs: [ build-runtimes, publish-release-draft ]
+ continue-on-error: true
+ runs-on: ubuntu-latest
+ strategy:
+ matrix: ${{ fromJSON(needs.build-runtimes.outputs.published_runtimes) }}
+
+ steps:
+ - name: Checkout sources
+ uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
+
+ - name: Download artifacts
+ uses: actions/download-artifact@c850b930e6ba138125429b7e5c93fc707a7f8427 # v4.1.4
+
+ - name: Get runtime info
+ env:
+ JSON: release-notes-context/${{ matrix.chain }}-runtime/${{ matrix.chain }}-srtool-digest.json
+ run: |
+ >>$GITHUB_ENV echo ASSET=$(find ${{ matrix.chain }}-runtime -name '*.compact.compressed.wasm')
+ >>$GITHUB_ENV echo SPEC=$(<${JSON} jq -r .runtimes.compact.subwasm.core_version.specVersion)
+
+ - name: Upload compressed ${{ matrix.chain }} v${{ env.SPEC }} wasm
+ if: ${{ matrix.chain != 'rococo-parachain' }}
+ uses: actions/upload-release-asset@e8f9f06c4b078e705bd2ea027f0926603fc9b4d5 #v1.0.2
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ with:
+ upload_url: ${{ needs.publish-release-draft.outputs.asset_upload_url }}
+ asset_path: ${{ env.ASSET }}
+ asset_name: ${{ matrix.chain }}_runtime-v${{ env.SPEC }}.compact.compressed.wasm
+ asset_content_type: application/wasm
+
+ post_to_matrix:
+ runs-on: ubuntu-latest
+ needs: publish-release-draft
+ strategy:
+ matrix:
+ channel:
+ - name: "Team: RelEng Internal"
+ room: '!GvAyzgCDgaVrvibaAF:parity.io'
+
+ steps:
+ - name: Send Matrix message to ${{ matrix.channel.name }}
+ uses: s3krit/matrix-message-action@70ad3fb812ee0e45ff8999d6af11cafad11a6ecf # v0.0.3
+ with:
+ room_id: ${{ matrix.channel.room }}
+ access_token: ${{ secrets.RELEASENOTES_MATRIX_V2_ACCESS_TOKEN }}
+ server: m.parity.io
+ message: |
+ **New version of polkadot tagged**: ${{ github.ref }}
+ Draft release created: ${{ needs.publish-release-draft.outputs.release_url }}
diff --git a/.github/workflows/release-50_publish-docker.yml b/.github/workflows/release-50_publish-docker.yml
index ecbac01cd3a5b2aaed679cfaf2ade0b04900531a..67e93ee96574de1f1e3e29f1bf6d90085865100d 100644
--- a/.github/workflows/release-50_publish-docker.yml
+++ b/.github/workflows/release-50_publish-docker.yml
@@ -36,7 +36,7 @@ on:
-H "Authorization: Bearer ${GITHUB_TOKEN}" https://api.github.com/repos/$OWNER/$REPO/releases | \
jq '.[] | { name: .name, id: .id }'
required: true
- type: string
+ type: number
registry:
description: Container registry
@@ -61,7 +61,6 @@ permissions:
contents: write
env:
- RELEASE_ID: ${{ inputs.release_id }}
ENGINE: docker
REGISTRY: ${{ inputs.registry }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -71,6 +70,7 @@ env:
# EVENT_ACTION: ${{ github.event.action }}
EVENT_NAME: ${{ github.event_name }}
IMAGE_TYPE: ${{ inputs.image_type }}
+ VERSION: ${{ inputs.version }}
jobs:
fetch-artifacts: # this job will be triggered for the polkadot-parachain rc and release or polkadot rc image build
@@ -95,13 +95,16 @@ jobs:
# chmod a+x $BINARY
# ls -al
- - name: Fetch rc artifacts or release artifacts based on release id
+ - name: Fetch rc artifacts or release artifacts from s3 based on version
#this step runs only if the workflow is triggered manually
if: ${{ env.EVENT_NAME == 'workflow_dispatch' }}
run: |
. ./.github/scripts/common/lib.sh
- fetch_release_artifacts
+ VERSION=$(filter_version_from_input "${{ inputs.version }}")
+ echo "VERSION=${VERSION}" >> $GITHUB_ENV
+
+ fetch_release_artifacts_from_s3
- name: Cache the artifacts
uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3.3.3
@@ -147,7 +150,10 @@ jobs:
if: ${{ env.IMAGE_TYPE == 'rc' }}
id: fetch_rc_refs
run: |
- release=release-${{ inputs.release_id }} && \
+ . ./.github/scripts/common/lib.sh
+
+ RELEASE_ID=$(check_release_id "${{ inputs.release_id }}")
+ release=release-$RELEASE_ID && \
echo "release=${release}" >> $GITHUB_OUTPUT
commit=$(git rev-parse --short HEAD) && \
diff --git a/.github/workflows/release-99_notif-published.yml b/.github/workflows/release-99_notif-published.yml
index b35120ca4e128beaa37047b0ac3f21b02f4da663..05c9d6a47f551860c51e318b01b495ca662e902e 100644
--- a/.github/workflows/release-99_notif-published.yml
+++ b/.github/workflows/release-99_notif-published.yml
@@ -8,22 +8,14 @@ on:
jobs:
ping_matrix:
runs-on: ubuntu-latest
+ environment: release
strategy:
matrix:
channel:
# Internal
- - name: 'RelEng: Cumulus Release Coordination'
- room: '!NAEMyPAHWOiOQHsvus:parity.io'
- pre-releases: true
- name: "RelEng: Polkadot Release Coordination"
room: '!cqAmzdIcbOFwrdrubV:parity.io'
pre-release: true
- - name: 'General: Rust, Polkadot, Substrate'
- room: '!aJymqQYtCjjqImFLSb:parity.io'
- pre-release: false
- - name: 'Team: DevOps'
- room: '!lUslSijLMgNcEKcAiE:parity.io'
- pre-release: true
# External
- name: 'Ledger <> Polkadot Coordination'
@@ -31,18 +23,15 @@ jobs:
pre-release: true
# Public
- # - name: '#KusamaValidatorLounge:polkadot.builders'
- # room: '!LhjZccBOqFNYKLdmbb:polkadot.builders'
- # pre-releases: false
- # - name: '#kusama-announcements:matrix.parity.io'
- # room: '!FMwxpQnYhRCNDRsYGI:matrix.parity.io'
- # pre-release: false
- # - name: '#polkadotvalidatorlounge:web3.foundation'
- # room: '!NZrbtteFeqYKCUGQtr:matrix.parity.io'
- # pre-release: false
- # - name: '#polkadot-announcements:matrix.parity.io'
- # room: '!UqHPWiCBGZWxrmYBkF:matrix.parity.io'
- # pre-release: false
+ - name: '#polkadotvalidatorlounge:web3.foundation'
+ room: '!NZrbtteFeqYKCUGQtr:matrix.parity.io'
+ pre-releases: false
+ - name: '#polkadot-announcements:parity.io'
+ room: '!UqHPWiCBGZWxrmYBkF:matrix.parity.io'
+ pre-releases: false
+ - name: '#kusama-announce:parity.io'
+ room: '!FMwxpQnYhRCNDRsYGI:matrix.parity.io'
+ pre-releases: false
steps:
- name: Matrix notification to ${{ matrix.channel.name }}
@@ -53,7 +42,9 @@ jobs:
access_token: ${{ secrets.RELEASENOTES_MATRIX_V2_ACCESS_TOKEN }}
server: m.parity.io
message: |
- A (pre)release has been ${{github.event.action}} in **${{github.event.repository.full_name}}:**
+ @room
+
+ A new node release has been ${{github.event.action}} in **${{github.event.repository.full_name}}:**
Release version: [${{github.event.release.tag_name}}](${{github.event.release.html_url}})
-----
diff --git a/.github/workflows/review-bot.yml b/.github/workflows/review-bot.yml
index 0a7e80f007c5b643ce183fdca85d91c57b61f53f..5b036115b2386c366b2f1e78e9ce1dc7d526eedd 100644
--- a/.github/workflows/review-bot.yml
+++ b/.github/workflows/review-bot.yml
@@ -23,7 +23,7 @@ jobs:
app_id: ${{ secrets.REVIEW_APP_ID }}
private_key: ${{ secrets.REVIEW_APP_KEY }}
- name: "Evaluates PR reviews and assigns reviewers"
- uses: paritytech/review-bot@v2.3.0
+ uses: paritytech/review-bot@v2.4.0
with:
repo-token: ${{ steps.app_token.outputs.token }}
team-token: ${{ steps.app_token.outputs.token }}
diff --git a/.github/workflows/srtool.yml b/.github/workflows/srtool.yml
index eb15538f559d2145700a73fb0e383d4103ce582a..95b1846b98e0c47cc6de2c92cadc16adc0cab487 100644
--- a/.github/workflows/srtool.yml
+++ b/.github/workflows/srtool.yml
@@ -12,6 +12,13 @@ on:
- release-v[0-9]+.[0-9]+.[0-9]+*
- release-cumulus-v[0-9]+*
- release-polkadot-v[0-9]+*
+ workflow_call:
+ inputs:
+ excluded_runtimes:
+ type: string
+ outputs:
+ published_runtimes:
+ value: ${{ jobs.find-runtimes.outputs.runtime }}
schedule:
- cron: "00 02 * * 1" # 2AM weekly on monday
@@ -39,7 +46,7 @@ jobs:
- name: Scan runtimes
env:
- EXCLUDED_RUNTIMES: "substrate-test"
+ EXCLUDED_RUNTIMES: ${{ inputs.excluded_runtimes }}:"substrate-test"
run: |
. ./.github/scripts/common/lib.sh
@@ -85,16 +92,6 @@ jobs:
echo "Compact Runtime: ${{ steps.srtool_build.outputs.wasm }}"
echo "Compressed Runtime: ${{ steps.srtool_build.outputs.wasm_compressed }}"
- # it takes a while to build the runtime, so let's save the artifact as soon as we have it
- - name: Archive Artifacts for ${{ matrix.chain }}
- uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2
- with:
- name: ${{ matrix.chain }}-runtime
- path: |
- ${{ steps.srtool_build.outputs.wasm }}
- ${{ steps.srtool_build.outputs.wasm_compressed }}
- ${{ matrix.chain }}-srtool-digest.json
-
# We now get extra information thanks to subwasm
- name: Install subwasm
run: |
@@ -125,7 +122,7 @@ jobs:
tee ${{ matrix.chain }}-diff.txt
- name: Archive Subwasm results
- uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2
+ uses: actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3 # v4.3.1
with:
name: ${{ matrix.chain }}-runtime
path: |
@@ -133,3 +130,6 @@ jobs:
${{ matrix.chain }}-compressed-info.json
${{ matrix.chain }}-metadata.json
${{ matrix.chain }}-diff.txt
+ ${{ steps.srtool_build.outputs.wasm }}
+ ${{ steps.srtool_build.outputs.wasm_compressed }}
+ ${{ matrix.chain }}-srtool-digest.json
diff --git a/.github/workflows/subsystem-benchmarks.yml b/.github/workflows/subsystem-benchmarks.yml
new file mode 100644
index 0000000000000000000000000000000000000000..1a726b669e9094e8be53ef5a1ddb1b3198210d33
--- /dev/null
+++ b/.github/workflows/subsystem-benchmarks.yml
@@ -0,0 +1,55 @@
+# The actions takes json file as input and runs github-action-benchmark for it.
+
+on:
+ workflow_dispatch:
+ inputs:
+ benchmark-data-dir-path:
+ description: "Path to the benchmark data directory"
+ required: true
+ type: string
+ output-file-path:
+ description: "Path to the benchmark data file"
+ required: true
+ type: string
+
+jobs:
+ subsystem-benchmarks:
+ runs-on: ubuntu-latest
+ environment: subsystem-benchmarks
+ steps:
+ - name: Validate inputs
+ run: |
+ echo "${{ github.event.inputs.benchmark-data-dir-path }}" | grep -P '^[a-z\-]'
+ echo "${{ github.event.inputs.output-file-path }}" | grep -P '^[a-z\-]+\.json'
+
+ - name: Checkout Sources
+ uses: actions/checkout@v4.1.2
+ with:
+ fetch-depth: 0
+ ref: "gh-pages"
+
+ - name: Copy bench results
+ id: step_one
+ run: |
+ cp bench/gitlab/${{ github.event.inputs.output-file-path }} ${{ github.event.inputs.output-file-path }}
+
+ - name: Switch branch
+ id: step_two
+ run: |
+ git checkout master --
+
+ - uses: actions/create-github-app-token@v1
+ id: app-token
+ with:
+ app-id: ${{ secrets.POLKADOTSDK_GHPAGES_APP_ID }}
+ private-key: ${{ secrets.POLKADOTSDK_GHPAGES_APP_KEY }}
+
+ - name: Store benchmark result
+ uses: benchmark-action/github-action-benchmark@v1
+ with:
+ tool: "customSmallerIsBetter"
+ name: ${{ github.event.inputs.benchmark-data-dir-path }}
+ output-file-path: ${{ github.event.inputs.output-file-path }}
+ benchmark-data-dir-path: "bench/${{ github.event.inputs.benchmark-data-dir-path }}"
+ github-token: ${{ steps.app-token.outputs.token }}
+ auto-push: true
diff --git a/.github/workflows/sync-templates.yml b/.github/workflows/sync-templates.yml
new file mode 100644
index 0000000000000000000000000000000000000000..511c9d0e8cd06f7b4b7b16126d6565cae9047a00
--- /dev/null
+++ b/.github/workflows/sync-templates.yml
@@ -0,0 +1,159 @@
+name: Synchronize templates
+
+
+# This job is used to keep the repository templates up-to-date.
+# The code of the templates exist inside the monorepo, and upon releases we synchronize the repositories:
+# - https://github.com/paritytech/polkadot-sdk-minimal-template
+# - https://github.com/paritytech/polkadot-sdk-parachain-template
+# - https://github.com/paritytech/polkadot-sdk-solochain-template
+#
+# The job moves the template code out of the monorepo,
+# replaces any references to the monorepo workspace using psvm and toml-cli,
+# checks that it builds successfully,
+# and commits and pushes the result to each respective repository.
+# If the build fails, a PR is created instead for manual inspection.
+
+
+on:
+ # A manual dispatch for now - automatic on releases later.
+ workflow_dispatch:
+ inputs:
+ crate_release_version:
+ description: 'A release version to use, e.g. 1.9.0'
+ required: true
+
+
+jobs:
+ sync-templates:
+ runs-on: ubuntu-latest
+ environment: master
+ strategy:
+ fail-fast: false
+ matrix:
+ template: ["minimal", "solochain", "parachain"]
+ env:
+ template-path: "polkadot-sdk-${{ matrix.template }}-template"
+ steps:
+
+ # 1. Prerequisites.
+
+ - name: Configure git identity
+ run: |
+ git config --global user.name "Template Bot"
+ git config --global user.email "163342540+paritytech-polkadotsdk-templatebot[bot]@users.noreply.github.com"
+ - uses: actions/checkout@v3
+ with:
+ path: polkadot-sdk
+ ref: "release-crates-io-v${{ github.event.inputs.crate_release_version }}"
+ - name: Generate a token for the template repository
+ id: app_token
+ uses: actions/create-github-app-token@v1.9.3
+ with:
+ owner: "paritytech"
+ repositories: "polkadot-sdk-${{ matrix.template }}-template"
+ app-id: ${{ secrets.TEMPLATE_APP_ID }}
+ private-key: ${{ secrets.TEMPLATE_APP_KEY }}
+ - uses: actions/checkout@v3
+ with:
+ repository: "paritytech/polkadot-sdk-${{ matrix.template }}-template"
+ path: "${{ env.template-path }}"
+ token: ${{ steps.app_token.outputs.token }}
+ - name: Install toml-cli
+ run: cargo install --git https://github.com/gnprice/toml-cli --rev ea69e9d2ca4f0f858110dc7a5ae28bcb918c07fb # v0.2.3
+ - name: Install Polkadot SDK Version Manager
+ run: cargo install --git https://github.com/paritytech/psvm --rev c41261ffb52ab0c115adbbdb17e2cb7900d2bdfd psvm # master
+ - name: Rust compilation prerequisites
+ run: |
+ sudo apt update
+ sudo apt install -y \
+ protobuf-compiler
+ rustup target add wasm32-unknown-unknown
+ rustup component add rustfmt clippy rust-src
+
+ # 2. Yanking the template out of the monorepo workspace.
+
+ - name: Use psvm to replace git references with released creates.
+ run: find . -type f -name 'Cargo.toml' -exec psvm -o -v ${{ github.event.inputs.crate_release_version }} -p {} \;
+ working-directory: polkadot-sdk/templates/${{ matrix.template }}/
+ - name: Create a new workspace Cargo.toml
+ run: |
+ cat << EOF > Cargo.toml
+ [workspace.package]
+ license = "MIT-0"
+ authors = ["Parity Technologies "]
+ homepage = "https://substrate.io"
+
+ [workspace]
+ members = [
+ "node",
+ "pallets/template",
+ "runtime",
+ ]
+ resolver = "2"
+ EOF
+ shell: bash
+ working-directory: polkadot-sdk/templates/${{ matrix.template }}/
+ - name: Update workspace configuration
+ run: |
+ set -euo pipefail
+ # toml-cli has no overwrite functionality yet, so we use temporary files.
+ # We cannot pipe the output straight to the same file while the CLI still reads and processes it.
+
+ toml set templates/${{ matrix.template }}/Cargo.toml 'workspace.package.repository' "https://github.com/paritytech/polkadot-sdk-${{ matrix.template }}-template.git" > Cargo.temp
+ mv Cargo.temp ./templates/${{ matrix.template }}/Cargo.toml
+
+ toml set templates/${{ matrix.template }}/Cargo.toml 'workspace.package.edition' "$(toml get --raw Cargo.toml 'workspace.package.edition')" > Cargo.temp
+ mv Cargo.temp ./templates/${{ matrix.template }}/Cargo.toml
+
+ toml get Cargo.toml 'workspace.lints' --output-toml >> ./templates/${{ matrix.template }}/Cargo.toml
+
+ toml get Cargo.toml 'workspace.dependencies' --output-toml >> ./templates/${{ matrix.template }}/Cargo.toml
+ working-directory: polkadot-sdk
+ - name: Print the result Cargo.tomls for debugging
+ if: runner.debug == '1'
+ run: find . -type f -name 'Cargo.toml' -exec cat {} \;
+ working-directory: polkadot-sdk/templates/${{ matrix.template }}/
+
+ - name: Clean the destination repository
+ run: rm -rf ./*
+ working-directory: "${{ env.template-path }}"
+ - name: Copy over the new changes
+ run: |
+ cp -r polkadot-sdk/templates/${{ matrix.template }}/* "${{ env.template-path }}/"
+
+ # 3. Verify the build. Push the changes or create a PR.
+
+ # We've run into out-of-disk error when compiling in the next step, so we free up some space this way.
+ - name: Free Disk Space (Ubuntu)
+ uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # 1.3.1
+ with:
+ android: true # This alone is a 12 GB save.
+ # We disable the rest because it caused some problems. (they're enabled by default)
+ # The Android removal is enough.
+ dotnet: false
+ haskell: false
+ large-packages: false
+ swap-storage: false
+
+ - name: Check if it compiles
+ id: check-compilation
+ run: cargo check && cargo test
+ working-directory: "${{ env.template-path }}"
+ timeout-minutes: 90
+ - name: Create PR on failure
+ if: failure() && steps.check-compilation.outcome == 'failure'
+ uses: peter-evans/create-pull-request@5b4a9f6a9e2af26e5f02351490b90d01eb8ec1e5 # v5
+ with:
+ path: "${{ env.template-path }}"
+ token: ${{ steps.app_token.outputs.token }}
+ add-paths: |
+ ./*
+ title: "[Don't merge] Update the ${{ matrix.template }} template"
+ body: "The template has NOT been successfully built and needs to be inspected."
+ branch: "update-template/${{ github.event_name }}"
+ - name: Push changes
+ run: |
+ git add -A .
+ git commit --allow-empty -m "Update template triggered by ${{ github.event_name }}"
+ git push
+ working-directory: "${{ env.template-path }}"
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 5e01feb84797e82b82d187307cdbaa17d0907b91..5e57dd86f14166e695f1c64b6b5aee56529a4781 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -119,24 +119,26 @@ default:
#
.forklift-cache:
before_script:
- - 'curl --header "PRIVATE-TOKEN: $FL_CI_GROUP_TOKEN" -o forklift -L "${CI_API_V4_URL}/projects/676/packages/generic/forklift/${FL_FORKLIFT_VERSION}/forklift_${FL_FORKLIFT_VERSION}_linux_amd64"'
- - chmod +x forklift
- - mkdir .forklift
- - cp $FL_FORKLIFT_CONFIG .forklift/config.toml
- - export FORKLIFT_PACKAGE_SUFFIX=${CI_JOB_NAME/ [0-9 \/]*}
- - shopt -s expand_aliases
- - export PATH=$PATH:$(pwd)
- - |
+ - mkdir ~/.forklift
+ - cp $FL_FORKLIFT_CONFIG ~/.forklift/config.toml
+ - >
if [ "$FORKLIFT_BYPASS" != "true" ]; then
- echo "FORKLIFT_BYPASS not set, creating alias cargo='forklift cargo'"
- alias cargo="forklift cargo"
+ echo "FORKLIFT_BYPASS not set";
+ if command -v forklift >/dev/null 2>&1; then
+ echo "forklift already exists";
+ forklift version
+ else
+ echo "forklift does not exist, downloading";
+ curl --header "PRIVATE-TOKEN: $FL_CI_GROUP_TOKEN" -o forklift -L "${CI_API_V4_URL}/projects/676/packages/generic/forklift/${FL_FORKLIFT_VERSION}/forklift_${FL_FORKLIFT_VERSION}_linux_amd64";
+ chmod +x forklift;
+ export PATH=$PATH:$(pwd);
+ echo ${FL_FORKLIFT_VERSION};
+ fi
+ echo "Creating alias cargo='forklift cargo'";
+ shopt -s expand_aliases;
+ alias cargo="forklift cargo";
fi
- - ls -al
- - rm -f forklift.sock
- - forklift clean
#
- - echo "FL_FORKLIFT_VERSION ${FL_FORKLIFT_VERSION}"
- - echo "FORKLIFT_PACKAGE_SUFFIX $FORKLIFT_PACKAGE_SUFFIX"
.common-refs:
rules:
@@ -152,6 +154,13 @@ default:
- if: $CI_COMMIT_REF_NAME =~ /^[0-9]+$/ # PRs
- if: $CI_COMMIT_REF_NAME =~ /^gh-readonly-queue.*$/ # merge queues
+.publish-gh-pages-refs:
+ rules:
+ - if: $CI_PIPELINE_SOURCE == "pipeline"
+ when: never
+ - if: $CI_PIPELINE_SOURCE == "web" && $CI_COMMIT_REF_NAME == "master"
+ - if: $CI_COMMIT_REF_NAME == "master"
+
# handle the specific case where benches could store incorrect bench data because of the downstream staging runs
# exclude cargo-check-benches from such runs
.test-refs-check-benches:
diff --git a/.gitlab/check-each-crate.py b/.gitlab/check-each-crate.py
index da2eaad36c522e5ebfdc0d43e78c38507807e1a6..9b654f8071ac7237fe9c7c943540e8e020cebd6e 100755
--- a/.gitlab/check-each-crate.py
+++ b/.gitlab/check-each-crate.py
@@ -55,7 +55,7 @@ for i in range(0, crates_per_group + overflow_crates):
print(f"Checking {crates[crate][0]}", file=sys.stderr)
- res = subprocess.run(["cargo", "check", "--locked"], cwd = crates[crate][1])
+ res = subprocess.run(["forklift", "cargo", "check", "--locked"], cwd = crates[crate][1])
if res.returncode != 0:
sys.exit(1)
diff --git a/.gitlab/pipeline/build.yml b/.gitlab/pipeline/build.yml
index d998b62c89936774be8ccaa63df0c0d0ff936513..8658e92efc8f9f7ae463a67a52eaf3d3d37df2f7 100644
--- a/.gitlab/pipeline/build.yml
+++ b/.gitlab/pipeline/build.yml
@@ -91,7 +91,7 @@ build-rustdoc:
- .run-immediately
variables:
SKIP_WASM_BUILD: 1
- RUSTDOCFLAGS: ""
+ RUSTDOCFLAGS: "-Dwarnings --default-theme=ayu --html-in-header ./docs/sdk/assets/header.html --extend-css ./docs/sdk/assets/theme.css --html-after-content ./docs/sdk/assets/after-content.html"
artifacts:
name: "${CI_JOB_NAME}_${CI_COMMIT_REF_NAME}-doc"
when: on_success
@@ -99,32 +99,31 @@ build-rustdoc:
paths:
- ./crate-docs/
script:
- # FIXME: it fails with `RUSTDOCFLAGS="-Dwarnings"` and `--all-features`
- - time cargo doc --features try-runtime,experimental --workspace --no-deps
+ - time cargo doc --all-features --workspace --no-deps
- rm -f ./target/doc/.lock
- mv ./target/doc ./crate-docs
# Inject Simple Analytics (https://www.simpleanalytics.com/) privacy preserving tracker into
# all .html files
- - |
+ - >
inject_simple_analytics() {
- local path="$1"
- local script_content=""
+ local path="$1";
+ local script_content="";
# Function that inject script into the head of an html file using sed.
process_file() {
- local file="$1"
- echo "Adding Simple Analytics script to $file"
- sed -i "s||$script_content|" "$file"
- }
- export -f process_file
- # xargs runs process_file in seperate shells without access to outer variables.
- # to make script_content available inside process_file, export it as an env var here.
- export script_content
+ local file="$1";
+ echo "Adding Simple Analytics script to $file";
+ sed -i "s||$script_content|" "$file";
+ };
+ export -f process_file;
+ # xargs runs process_file in separate shells without access to outer variables.
+ # make script_content available inside process_file, export it as an env var here.
+ export script_content;
# Modify .html files in parallel using xargs, otherwise it can take a long time.
- find "$path" -name '*.html' | xargs -I {} -P "$(nproc)" bash -c 'process_file "$@"' _ {}
- }
- inject_simple_analytics "./crate-docs"
+ find "$path" -name '*.html' | xargs -I {} -P "$(nproc)" bash -c 'process_file "$@"' _ {};
+ };
+ inject_simple_analytics "./crate-docs";
- echo "" > ./crate-docs/index.html
build-implementers-guide:
@@ -314,8 +313,9 @@ build-linux-substrate:
# tldr: we need to checkout the branch HEAD explicitly because of our dynamic versioning approach while building the substrate binary
# see https://github.com/paritytech/ci_cd/issues/682#issuecomment-1340953589
- git checkout -B "$CI_COMMIT_REF_NAME" "$CI_COMMIT_SHA"
+ - !reference [.forklift-cache, before_script]
script:
- - WASM_BUILD_NO_COLOR=1 time cargo build --locked --release -p staging-node-cli
+ - time WASM_BUILD_NO_COLOR=1 cargo build --locked --release -p staging-node-cli
- mv $CARGO_TARGET_DIR/release/substrate-node ./artifacts/substrate/substrate
- echo -n "Substrate version = "
- if [ "${CI_COMMIT_TAG}" ]; then
@@ -329,6 +329,18 @@ build-linux-substrate:
# - printf '\n# building node-template\n\n'
# - ./scripts/ci/node-template-release.sh ./artifacts/substrate/substrate-node-template.tar.gz
+build-runtimes-polkavm:
+ stage: build
+ extends:
+ - .docker-env
+ - .common-refs
+ - .run-immediately
+ script:
+ - SUBSTRATE_RUNTIME_TARGET=riscv cargo check -p minimal-template-runtime
+ - SUBSTRATE_RUNTIME_TARGET=riscv cargo check -p westend-runtime
+ - SUBSTRATE_RUNTIME_TARGET=riscv cargo check -p rococo-runtime
+ - SUBSTRATE_RUNTIME_TARGET=riscv cargo check -p polkadot-test-runtime
+
.build-subkey:
stage: build
extends:
@@ -337,13 +349,14 @@ build-linux-substrate:
- .run-immediately
# - .collect-artifact
variables:
- # this variable gets overriden by "rusty-cachier environment inject", use the value as default
+ # this variable gets overridden by "rusty-cachier environment inject", use the value as default
CARGO_TARGET_DIR: "$CI_PROJECT_DIR/target"
before_script:
- mkdir -p ./artifacts/subkey
+ - !reference [.forklift-cache, before_script]
script:
- cd ./substrate/bin/utils/subkey
- - SKIP_WASM_BUILD=1 time cargo build --locked --release
+ - time SKIP_WASM_BUILD=1 cargo build --locked --release
# - cd -
# - mv $CARGO_TARGET_DIR/release/subkey ./artifacts/subkey/.
# - echo -n "Subkey version = "
@@ -395,8 +408,5 @@ prepare-bridges-zombienet-artifacts:
- .collect-artifacts
before_script:
- mkdir -p ./artifacts/bridges-polkadot-sdk/bridges
- - mkdir -p ./artifacts/bridges-polkadot-sdk/cumulus/zombienet
script:
- - cp -r bridges/zombienet ./artifacts/bridges-polkadot-sdk/bridges/zombienet
- - cp -r cumulus/scripts ./artifacts/bridges-polkadot-sdk/cumulus/scripts
- - cp -r cumulus/zombienet/bridge-hubs ./artifacts/bridges-polkadot-sdk/cumulus/zombienet/bridge-hubs
+ - cp -r bridges/testing ./artifacts/bridges-polkadot-sdk/bridges/testing
diff --git a/.gitlab/pipeline/check.yml b/.gitlab/pipeline/check.yml
index 1ed12e68c2ce19b67dd5aca03cec85702351c039..89b2c00db9b2b13187a562987e00abcb232e0e32 100644
--- a/.gitlab/pipeline/check.yml
+++ b/.gitlab/pipeline/check.yml
@@ -7,8 +7,8 @@ cargo-clippy:
variables:
RUSTFLAGS: "-D warnings"
script:
- - SKIP_WASM_BUILD=1 cargo clippy --all-targets --locked --workspace
- - SKIP_WASM_BUILD=1 cargo clippy --all-targets --all-features --locked --workspace
+ - SKIP_WASM_BUILD=1 cargo clippy --all-targets --locked --workspace --quiet
+ - SKIP_WASM_BUILD=1 cargo clippy --all-targets --all-features --locked --workspace --quiet
check-try-runtime:
stage: check
@@ -104,21 +104,20 @@ check-toml-format:
- .docker-env
- .test-pr-refs
script:
- - |
- export RUST_LOG=remote-ext=debug,runtime=debug
-
- echo "---------- Downloading try-runtime CLI ----------"
- curl -sL https://github.com/paritytech/try-runtime-cli/releases/download/v0.5.0/try-runtime-x86_64-unknown-linux-musl -o try-runtime
- chmod +x ./try-runtime
-
- echo "---------- Building ${PACKAGE} runtime ----------"
- time cargo build --release --locked -p "$PACKAGE" --features try-runtime
-
- echo "---------- Executing on-runtime-upgrade for ${NETWORK} ----------"
+ - export RUST_LOG=remote-ext=debug,runtime=debug
+ - echo "---------- Downloading try-runtime CLI ----------"
+ - curl -sL https://github.com/paritytech/try-runtime-cli/releases/download/v0.5.4/try-runtime-x86_64-unknown-linux-musl -o try-runtime
+ - chmod +x ./try-runtime
+ - echo "Using try-runtime-cli version:"
+ - ./try-runtime --version
+ - echo "---------- Building ${PACKAGE} runtime ----------"
+ - time cargo build --release --locked -p "$PACKAGE" --features try-runtime
+ - echo "---------- Executing on-runtime-upgrade for ${NETWORK} ----------"
+ - >
time ./try-runtime ${COMMAND_EXTRA_ARGS} \
- --runtime ./target/release/wbuild/"$PACKAGE"/"$WASM" \
- on-runtime-upgrade --disable-spec-version-check --checks=all ${SUBCOMMAND_EXTRA_ARGS} live --uri ${URI}
- sleep 5
+ --runtime ./target/release/wbuild/"$PACKAGE"/"$WASM" \
+ on-runtime-upgrade --disable-spec-version-check --checks=all ${SUBCOMMAND_EXTRA_ARGS} live --uri ${URI}
+ - sleep 5
# Check runtime migrations for Parity managed relay chains
check-runtime-migration-westend:
@@ -133,6 +132,7 @@ check-runtime-migration-westend:
WASM: "westend_runtime.compact.compressed.wasm"
URI: "wss://westend-try-runtime-node.parity-chains.parity.io:443"
SUBCOMMAND_EXTRA_ARGS: "--no-weight-warnings"
+ allow_failure: true
check-runtime-migration-rococo:
stage: check
@@ -256,3 +256,19 @@ find-fail-ci-phrase:
echo "No $ASSERT_REGEX was found, exiting with 0";
exit 0;
fi
+
+check-core-crypto-features:
+ stage: check
+ extends:
+ - .docker-env
+ - .common-refs
+ script:
+ - pushd substrate/primitives/core
+ - ./check-features-variants.sh
+ - popd
+ - pushd substrate/primitives/application-crypto
+ - ./check-features-variants.sh
+ - popd
+ - pushd substrate/primitives/keyring
+ - ./check-features-variants.sh
+ - popd
diff --git a/.gitlab/pipeline/publish.yml b/.gitlab/pipeline/publish.yml
index b73acb560f67f93e540826b95fcf075374189846..d8f5d5832291f7afced292d3b0fdeb6238de26a8 100644
--- a/.gitlab/pipeline/publish.yml
+++ b/.gitlab/pipeline/publish.yml
@@ -3,16 +3,13 @@
publish-rustdoc:
stage: publish
- extends: .kubernetes-env
+ extends:
+ - .kubernetes-env
+ - .publish-gh-pages-refs
variables:
CI_IMAGE: node:18
GIT_DEPTH: 100
RUSTDOCS_DEPLOY_REFS: "master"
- rules:
- - if: $CI_PIPELINE_SOURCE == "pipeline"
- when: never
- - if: $CI_PIPELINE_SOURCE == "web" && $CI_COMMIT_REF_NAME == "master"
- - if: $CI_COMMIT_REF_NAME == "master"
needs:
- job: build-rustdoc
artifacts: true
@@ -60,9 +57,80 @@ publish-rustdoc:
- git commit -m "___Updated docs for ${CI_COMMIT_REF_NAME}___" ||
echo "___Nothing to commit___"
- git push origin gh-pages --force
+ # artificial sleep to publish gh-pages
+ - sleep 300
+ after_script:
+ - rm -rf .git/ ./*
+
+publish-subsystem-benchmarks:
+ stage: publish
+ variables:
+ CI_IMAGE: "paritytech/tools:latest"
+ extends:
+ - .kubernetes-env
+ - .publish-gh-pages-refs
+ needs:
+ - job: subsystem-benchmark-availability-recovery
+ artifacts: true
+ - job: subsystem-benchmark-availability-distribution
+ artifacts: true
+ - job: publish-rustdoc
+ artifacts: false
+ script:
+ # setup ssh
+ - eval $(ssh-agent)
+ - ssh-add - <<< ${GITHUB_SSH_PRIV_KEY}
+ - mkdir ~/.ssh && touch ~/.ssh/known_hosts
+ - ssh-keyscan -t rsa github.com >> ~/.ssh/known_hosts
+ # Set git config
+ - rm -rf .git/config
+ - git config user.email "devops-team@parity.io"
+ - git config user.name "${GITHUB_USER}"
+ - git config remote.origin.url "git@github.com:/paritytech/${CI_PROJECT_NAME}.git"
+ - git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*"
+ - git fetch origin gh-pages
+ # Push result to github
+ - git checkout gh-pages --force
+ - mkdir -p bench/gitlab/ || echo "Directory exists"
+ - rm -rf bench/gitlab/*.json || echo "No json files"
+ - cp -r charts/*.json bench/gitlab/
+ - git add bench/gitlab/
+ - git commit -m "Add json files with benchmark results for ${CI_COMMIT_REF_NAME}"
+ - git push origin gh-pages
+ # artificial sleep to publish gh-pages
+ - sleep 300
+ allow_failure: true
after_script:
- rm -rf .git/ ./*
+trigger_workflow:
+ stage: deploy
+ extends:
+ - .kubernetes-env
+ - .publish-gh-pages-refs
+ needs:
+ - job: publish-subsystem-benchmarks
+ artifacts: false
+ - job: subsystem-benchmark-availability-recovery
+ artifacts: true
+ - job: subsystem-benchmark-availability-distribution
+ artifacts: true
+ script:
+ - echo "Triggering workflow"
+ - >
+ for benchmark in $(ls charts/*.json); do
+ export benchmark_name=$(basename $benchmark);
+ echo "Benchmark: $benchmark_name";
+ export benchmark_dir=$(echo $benchmark_name | sed 's/\.json//');
+ curl -q -X POST \
+ -H "Accept: application/vnd.github.v3+json" \
+ -H "Authorization: token $GITHUB_TOKEN" \
+ https://api.github.com/repos/paritytech/${CI_PROJECT_NAME}/actions/workflows/subsystem-benchmarks.yml/dispatches \
+ -d "{\"ref\":\"refs/heads/master\",\"inputs\":{\"benchmark-data-dir-path\":\"$benchmark_dir\",\"output-file-path\":\"$benchmark_name\"}}";
+ sleep 300;
+ done
+ allow_failure: true
+
# note: images are used not only in zombienet but also in rococo, wococo and versi
.build-push-image:
image: $BUILDAH_IMAGE
diff --git a/.gitlab/pipeline/short-benchmarks.yml b/.gitlab/pipeline/short-benchmarks.yml
index e9dbe20088116721470e57a02b9b3d1353634c06..bc6dd04264c8e3a46a7c99e427ef6b60243af481 100644
--- a/.gitlab/pipeline/short-benchmarks.yml
+++ b/.gitlab/pipeline/short-benchmarks.yml
@@ -84,6 +84,16 @@ short-benchmark-coretime-westend:
variables:
RUNTIME_CHAIN: coretime-westend-dev
+short-benchmark-people-rococo:
+ <<: *short-bench-cumulus
+ variables:
+ RUNTIME_CHAIN: people-rococo-dev
+
+short-benchmark-people-westend:
+ <<: *short-bench-cumulus
+ variables:
+ RUNTIME_CHAIN: people-westend-dev
+
short-benchmark-glutton-westend:
<<: *short-bench-cumulus
variables:
diff --git a/.gitlab/pipeline/test.yml b/.gitlab/pipeline/test.yml
index e75700ffddc468a918b216875294e362571754f5..1d6efd7b9fd1a91c3c49aa26faa9263216e9cb4e 100644
--- a/.gitlab/pipeline/test.yml
+++ b/.gitlab/pipeline/test.yml
@@ -23,7 +23,7 @@ test-linux-stable:
- echo "Node index - ${CI_NODE_INDEX}. Total amount - ${CI_NODE_TOTAL}"
# add experimental to features after https://github.com/paritytech/substrate/pull/14502 is merged
# "upgrade_version_checks_should_work" is currently failing
- - |
+ - >
time cargo nextest run \
--workspace \
--locked \
@@ -34,7 +34,7 @@ test-linux-stable:
# Upload tests results to Elasticsearch
- echo "Upload test results to Elasticsearch"
- cat target/nextest/default/junit.xml | xq . > target/nextest/default/junit.json
- - |
+ - >
curl -v -XPOST --http1.1 \
-u ${ELASTIC_USERNAME}:${ELASTIC_PASSWORD} \
https://elasticsearch.parity-build.parity.io/unit-tests/_doc/${CI_JOB_ID} \
@@ -48,6 +48,7 @@ test-linux-stable:
- target/nextest/default/junit.xml
reports:
junit: target/nextest/default/junit.xml
+ timeout: 90m
test-linux-oldkernel-stable:
extends: test-linux-stable
@@ -86,7 +87,7 @@ test-linux-stable-runtime-benchmarks:
# script:
# # Build all but only execute 'runtime' tests.
# - echo "Node index - ${CI_NODE_INDEX}. Total amount - ${CI_NODE_TOTAL}"
-# - |
+# - >
# time cargo nextest run \
# --workspace \
# --locked \
@@ -224,6 +225,7 @@ cargo-check-benches:
git merge --verbose --no-edit FETCH_HEAD;
fi
fi'
+ - !reference [.forklift-cache, before_script]
parallel: 2
script:
- mkdir -p ./artifacts/benches/$CI_COMMIT_REF_NAME-$CI_COMMIT_SHORT_SHA
@@ -320,7 +322,24 @@ quick-benchmarks:
WASM_BUILD_NO_COLOR: 1
WASM_BUILD_RUSTFLAGS: "-C debug-assertions -D warnings"
script:
- - time cargo run --locked --release -p staging-node-cli --bin substrate-node --features runtime-benchmarks -- benchmark pallet --execution wasm --wasm-execution compiled --chain dev --pallet "*" --extrinsic "*" --steps 2 --repeat 1
+ - time cargo run --locked --release -p staging-node-cli --bin substrate-node --features runtime-benchmarks --quiet -- benchmark pallet --chain dev --pallet "*" --extrinsic "*" --steps 2 --repeat 1 --quiet
+
+quick-benchmarks-omni:
+ stage: test
+ extends:
+ - .docker-env
+ - .common-refs
+ - .run-immediately
+ variables:
+ # Enable debug assertions since we are running optimized builds for testing
+ # but still want to have debug assertions.
+ RUSTFLAGS: "-C debug-assertions"
+ RUST_BACKTRACE: "full"
+ WASM_BUILD_NO_COLOR: 1
+ WASM_BUILD_RUSTFLAGS: "-C debug-assertions"
+ script:
+ - time cargo build --locked --quiet --release -p asset-hub-westend-runtime --features runtime-benchmarks
+ - time cargo run --locked --release -p frame-omni-bencher --quiet -- v1 benchmark pallet --runtime target/release/wbuild/asset-hub-westend-runtime/asset_hub_westend_runtime.compact.compressed.wasm --all --steps 2 --repeat 1 --quiet
test-frame-examples-compile-to-wasm:
# into one job
@@ -491,3 +510,39 @@ test-syscalls:
printf "The x86_64 syscalls used by the worker binaries have changed. Please review if this is expected and update polkadot/scripts/list-syscalls/*-worker-syscalls as needed.\n";
fi
allow_failure: false # this rarely triggers in practice
+
+subsystem-benchmark-availability-recovery:
+ stage: test
+ artifacts:
+ name: "${CI_JOB_NAME}_${CI_COMMIT_REF_NAME}"
+ when: always
+ expire_in: 1 hour
+ paths:
+ - charts/
+ extends:
+ - .docker-env
+ - .common-refs
+ - .run-immediately
+ script:
+ - cargo bench -p polkadot-availability-recovery --bench availability-recovery-regression-bench --features subsystem-benchmarks
+ tags:
+ - benchmark
+ allow_failure: true
+
+subsystem-benchmark-availability-distribution:
+ stage: test
+ artifacts:
+ name: "${CI_JOB_NAME}_${CI_COMMIT_REF_NAME}"
+ when: always
+ expire_in: 1 hour
+ paths:
+ - charts/
+ extends:
+ - .docker-env
+ - .common-refs
+ - .run-immediately
+ script:
+ - cargo bench -p polkadot-availability-distribution --bench availability-distribution-regression-bench --features subsystem-benchmarks
+ tags:
+ - benchmark
+ allow_failure: true
diff --git a/.gitlab/pipeline/zombienet.yml b/.gitlab/pipeline/zombienet.yml
index 55120e66d0e53c740b16a7ee6276230f42c172ef..52948e1eb719d9f8669523d9762f5662fd1b6e96 100644
--- a/.gitlab/pipeline/zombienet.yml
+++ b/.gitlab/pipeline/zombienet.yml
@@ -1,7 +1,8 @@
.zombienet-refs:
extends: .build-refs
variables:
- ZOMBIENET_IMAGE: "docker.io/paritytech/zombienet:v1.3.91"
+ ZOMBIENET_IMAGE: "docker.io/paritytech/zombienet:v1.3.99"
+ PUSHGATEWAY_URL: "http://zombienet-prometheus-pushgateway.managed-monitoring:9091/metrics/job/zombie-metrics"
include:
# substrate tests
diff --git a/.gitlab/pipeline/zombienet/bridges.yml b/.gitlab/pipeline/zombienet/bridges.yml
index 9414207a3bbf7031b3ba92e972c50a8db3bdf25e..4278f59b1e9a2e33f32bf255436d6af5d31b30fb 100644
--- a/.gitlab/pipeline/zombienet/bridges.yml
+++ b/.gitlab/pipeline/zombienet/bridges.yml
@@ -3,9 +3,16 @@
# common settings for all zombienet jobs
.zombienet-bridges-common:
+ extends:
+ - .kubernetes-env
+ - .zombienet-refs
+ rules:
+ # Docker images have different tag in merge queues
+ - if: $CI_COMMIT_REF_NAME =~ /^gh-readonly-queue.*$/
+ variables:
+ DOCKER_IMAGES_VERSION: ${CI_COMMIT_SHORT_SHA}
+ - !reference [.build-refs, rules]
before_script:
- # Exit if the job is not merge queue
- # - if [[ $CI_COMMIT_REF_NAME != *"gh-readonly-queue"* ]]; then echo "I will run only in a merge queue"; exit 0; fi
- echo "Zombienet Tests Config"
- echo "${ZOMBIENET_IMAGE}"
- echo "${GH_DIR}"
@@ -19,14 +26,11 @@
needs:
- job: build-push-image-bridges-zombienet-tests
artifacts: true
- extends:
- - .kubernetes-env
- - .zombienet-refs
variables:
BRIDGES_ZOMBIENET_TESTS_IMAGE_TAG: ${DOCKER_IMAGES_VERSION}
BRIDGES_ZOMBIENET_TESTS_IMAGE: "docker.io/paritypr/bridges-zombienet-tests"
- GH_DIR: "https://github.com/paritytech/polkadot-sdk/tree/${CI_COMMIT_SHA}/bridges/zombienet"
- LOCAL_DIR: "/builds/parity/mirrors/polkadot-sdk/bridges/zombienet"
+ GH_DIR: "https://github.com/paritytech/polkadot-sdk/tree/${CI_COMMIT_SHA}/bridges/testing"
+ LOCAL_DIR: "/builds/parity/mirrors/polkadot-sdk/bridges/testing"
FF_DISABLE_UMASK_FOR_DOCKER_EXECUTOR: 1
RUN_IN_CONTAINER: "1"
artifacts:
@@ -37,18 +41,23 @@
- ./zombienet-logs
after_script:
- mkdir -p ./zombienet-logs
- # copy logs of tests runner (run-tests.sh)
- - cp -r /tmp/bridges-zombienet-tests.*/tmp.*/tmp.* ./zombienet-logs/
- # copy logs of all nodes
- - cp /tmp/zombie*/logs/* ./zombienet-logs/
-# following lines are causing spurious test failures ("At least one of the nodes fails to start")
-# retry: 2
-# tags:
-# - zombienet-polkadot-integration-test
+ # copy general logs
+ - cp -r /tmp/bridges-tests-run-*/logs/* ./zombienet-logs/
+ # copy logs of rococo nodes
+ - cp -r /tmp/bridges-tests-run-*/bridge_hub_rococo_local_network/*.log ./zombienet-logs/
+ # copy logs of westend nodes
+ - cp -r /tmp/bridges-tests-run-*/bridge_hub_westend_local_network/*.log ./zombienet-logs/
zombienet-bridges-0001-asset-transfer-works:
extends:
- .zombienet-bridges-common
script:
- - /home/nonroot/bridges-polkadot-sdk/bridges/zombienet/run-tests.sh --docker
+ - /home/nonroot/bridges-polkadot-sdk/bridges/testing/run-new-test.sh 0001-asset-transfer --docker
+ - echo "Done"
+
+zombienet-bridges-0002-mandatory-headers-synced-while-idle:
+ extends:
+ - .zombienet-bridges-common
+ script:
+ - /home/nonroot/bridges-polkadot-sdk/bridges/testing/run-new-test.sh 0002-mandatory-headers-synced-while-idle --docker
- echo "Done"
diff --git a/.gitlab/pipeline/zombienet/polkadot.yml b/.gitlab/pipeline/zombienet/polkadot.yml
index 7f5d424ec1b6d18c223f7404ff816646e0fc4c37..6b72075c513b73c075d1dc10c90d0461bf0e1a82 100644
--- a/.gitlab/pipeline/zombienet/polkadot.yml
+++ b/.gitlab/pipeline/zombienet/polkadot.yml
@@ -150,6 +150,32 @@ zombienet-polkadot-functional-0010-validator-disabling:
--local-dir="${LOCAL_DIR}/functional"
--test="0010-validator-disabling.zndsl"
+zombienet-polkadot-functional-0011-async-backing-6-seconds-rate:
+ extends:
+ - .zombienet-polkadot-common
+ script:
+ - /home/nonroot/zombie-net/scripts/ci/run-test-local-env-manager.sh
+ --local-dir="${LOCAL_DIR}/functional"
+ --test="0011-async-backing-6-seconds-rate.zndsl"
+
+zombienet-polkadot-elastic-scaling-0001-basic-3cores-6s-blocks:
+ extends:
+ - .zombienet-polkadot-common
+ variables:
+ FORCED_INFRA_INSTANCE: "spot-iops"
+ script:
+ - /home/nonroot/zombie-net/scripts/ci/run-test-local-env-manager.sh
+ --local-dir="${LOCAL_DIR}/elastic_scaling"
+ --test="0001-basic-3cores-6s-blocks.zndsl"
+
+zombienet-polkadot-elastic-scaling-0002-elastic-scaling-doesnt-break-parachains:
+ extends:
+ - .zombienet-polkadot-common
+ script:
+ - /home/nonroot/zombie-net/scripts/ci/run-test-local-env-manager.sh
+ --local-dir="${LOCAL_DIR}/elastic_scaling"
+ --test="0002-elastic-scaling-doesnt-break-parachains.zndsl"
+
zombienet-polkadot-smoke-0001-parachains-smoke-test:
extends:
- .zombienet-polkadot-common
diff --git a/.gitlab/rust-features.sh b/.gitlab/rust-features.sh
index c0ac192a6ec69ba16abb3bad2ec49de7e9cebb61..c3ec61ab8714768c9a49f2eb2e1e544706a1d875 100755
--- a/.gitlab/rust-features.sh
+++ b/.gitlab/rust-features.sh
@@ -15,7 +15,7 @@
#
# The steps of this script:
# 1. Check that all required dependencies are installed.
-# 2. Check that all rules are fullfilled for the whole workspace. If not:
+# 2. Check that all rules are fulfilled for the whole workspace. If not:
# 4. Check all crates to find the offending ones.
# 5. Print all offending crates and exit with code 1.
#
diff --git a/BRIDGES.md b/BRIDGES.md
deleted file mode 100644
index a6f00aec09283e10d1a697bcef3f523881941663..0000000000000000000000000000000000000000
--- a/BRIDGES.md
+++ /dev/null
@@ -1,91 +0,0 @@
-# Using Parity Bridges Common dependency (`git subtree`)
-
-In `./bridges` sub-directory you can find a `git subtree` imported version of:
-[`parity-bridges-common`](https://github.com/paritytech/parity-bridges-common/) repository.
-
-(For regular Cumulus contributor 1. is relevant) \
-(For Cumulus maintainer 1. and 2. are relevant) \
-(For Bridges team 1. and 2. and 3. are relevant)
-
-## How to fix broken Bridges code?
-
-To fix Bridges code simply create a commit in current (`Cumulus`) repo. Best if
-the commit is isolated to changes in `./bridges` sub-directory, because it makes
-it easier to import that change back to upstream repo.
-
-(Any changes to `bridges` subtree require Bridges team approve and they should manage backport to Bridges repo)
-
-
-## How to pull latest Bridges code to the `bridges` subtree
-(in practice)
-
-The `bridges` repo has a stabilized branch `polkadot-staging` dedicated for releasing.
-
-```
-cd
-
-# this will update new git branches from bridges repo
-# there could be unresolved conflicts, but don't worry,
-# lots of them are caused because of removed unneeded files with patch step,
-BRANCH=polkadot-staging ./scripts/bridges_update_subtree.sh fetch
-
-# so, after fetch and before solving conflicts just run patch,
-# this will remove unneeded files and checks if subtree modules compiles
-./scripts/bridges_update_subtree.sh patch
-
-# if there are conflicts, this could help,
-# this removes locally deleted files at least (move changes to git stash for commit)
-./scripts/bridges_update_subtree.sh merge
-
-# (optional) when conflicts resolved, you can check build again - should pass
-# also important: this updates global Cargo.lock
-./scripts/bridges_update_subtree.sh patch
-
-# add changes to the commit, first command `fetch` starts merge,
-# so after all conflicts are solved and patch passes and compiles,
-# then we need to finish merge with:
-git merge --continue
-```
-
-## How to pull latest Bridges code or contribute back?
-(in theory)
-
-Note that it's totally fine to ping the **Bridges Team** to do that for you. The point
-of adding the code as `git subtree` is to **reduce maintenance cost** for Cumulus/Polkadot
-developers.
-
-If you still would like to either update the code to match latest code from the repo
-or create an upstream PR read below. The following commands should be run in the
-current (`polkadot`) repo.
-
-### Add Bridges repo as a local remote
-```
-git remote add -f bridges git@github.com:paritytech/parity-bridges-common.git
-```
-
-If you plan to contribute back, consider forking the repository on Github and adding
-your personal fork as a remote as well.
-```
-git remote add -f my-bridges git@github.com:tomusdrw/parity-bridges-common.git
-```
-
-### To update Bridges
-```
-git fetch bridges polkadot-staging
-git subtree pull --prefix=bridges bridges polkadot-staging --squash
-```
-
-We use `--squash` to avoid adding individual commits and rather squashing them
-all into one.
-
-### Clean unneeded files here
-```
-./bridges/scripts/verify-pallets-build.sh --ignore-git-state --no-revert
-```
-
-### Contributing back to Bridges (creating upstream PR)
-```
-git subtree push --prefix=bridges my-bridges polkadot-staging
-```
-This command will push changes to your personal fork of Bridges repo, from where
-you can simply create a PR to the main repo.
diff --git a/Cargo.lock b/Cargo.lock
index 0152391a4f2e4a8335ff2eac2c9124e49adb2b9e..27cb7af04d63390df820dc87ca7922157bfb32ff 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -86,16 +86,16 @@ dependencies = [
[[package]]
name = "aes-gcm"
-version = "0.9.4"
+version = "0.9.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df5f85a83a7d8b0442b6aa7b504b8212c1733da07b98aae43d4bc21b2cb3cdf6"
+checksum = "bc3be92e19a7ef47457b8e6f90707e12b6ac5d20c6f3866584fa3be0787d839f"
dependencies = [
"aead 0.4.3",
"aes 0.7.5",
"cipher 0.3.0",
- "ctr 0.8.0",
+ "ctr 0.7.0",
"ghash 0.4.4",
- "subtle 2.4.1",
+ "subtle 2.5.0",
]
[[package]]
@@ -109,14 +109,14 @@ dependencies = [
"cipher 0.4.4",
"ctr 0.9.2",
"ghash 0.5.0",
- "subtle 2.4.1",
+ "subtle 2.5.0",
]
[[package]]
name = "ahash"
-version = "0.7.6"
+version = "0.7.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47"
+checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9"
dependencies = [
"getrandom 0.2.10",
"once_cell",
@@ -125,9 +125,9 @@ dependencies = [
[[package]]
name = "ahash"
-version = "0.8.7"
+version = "0.8.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01"
+checksum = "42cd52102d3df161c77a887b608d7a4897d7cc112886a9537b738a887a03aaff"
dependencies = [
"cfg-if",
"getrandom 0.2.10",
@@ -165,7 +165,7 @@ dependencies = [
"hex-literal",
"itoa",
"proptest",
- "rand",
+ "rand 0.8.5",
"ruint",
"serde",
"tiny-keccak",
@@ -177,23 +177,11 @@ version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cc0fac0fc16baf1f63f78b47c3d24718f3619b0714076f6a02957d808d52cbef"
dependencies = [
- "alloy-rlp-derive",
"arrayvec 0.7.4",
"bytes",
"smol_str",
]
-[[package]]
-name = "alloy-rlp-derive"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0391754c09fab4eae3404d19d0d297aa1c670c1775ab51d8a5312afeca23157"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
-]
-
[[package]]
name = "alloy-sol-macro"
version = "0.4.2"
@@ -202,11 +190,11 @@ checksum = "8a98ad1696a2e17f010ae8e43e9f2a1e930ed176a8e3ff77acfeff6dfb07b42c"
dependencies = [
"const-hex",
"dunce",
- "heck",
+ "heck 0.4.1",
"proc-macro-error",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
"syn-solidity",
"tiny-keccak",
]
@@ -229,15 +217,6 @@ version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4436e0292ab1bb631b42973c61205e704475fe8126af845c8d923c0996328127"
-[[package]]
-name = "amcl"
-version = "0.3.0"
-source = "git+https://github.com/snowfork/milagro_bls?rev=a6d66e4eb89015e352fb1c9f7b661ecdbb5b2176#a6d66e4eb89015e352fb1c9f7b661ecdbb5b2176"
-dependencies = [
- "parity-scale-codec",
- "scale-info",
-]
-
[[package]]
name = "android-tzdata"
version = "0.1.1"
@@ -270,9 +249,9 @@ dependencies = [
[[package]]
name = "anstream"
-version = "0.6.7"
+version = "0.6.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4cd2405b3ac1faab2990b74d728624cd9fd115651fcecc7c2d8daf01376275ba"
+checksum = "6e2e1ebcb11de5c03c67de28a7df593d32191b44939c482e97702baaaa6ab6a5"
dependencies = [
"anstyle",
"anstyle-parse",
@@ -284,9 +263,9 @@ dependencies = [
[[package]]
name = "anstyle"
-version = "1.0.2"
+version = "1.0.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15c4c2c83f81532e5845a733998b6971faca23490340a418e9b72a3ec9de12ea"
+checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc"
[[package]]
name = "anstyle-parse"
@@ -318,9 +297,9 @@ dependencies = [
[[package]]
name = "anyhow"
-version = "1.0.75"
+version = "1.0.81"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
+checksum = "0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247"
[[package]]
name = "approx"
@@ -331,6 +310,20 @@ dependencies = [
"num-traits",
]
+[[package]]
+name = "aquamarine"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d1da02abba9f9063d786eab1509833ebb2fac0f966862ca59439c76b9c566760"
+dependencies = [
+ "include_dir",
+ "itertools 0.10.5",
+ "proc-macro-error",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 1.0.109",
+]
+
[[package]]
name = "aquamarine"
version = "0.5.0"
@@ -340,16 +333,16 @@ dependencies = [
"include_dir",
"itertools 0.10.5",
"proc-macro-error",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
name = "arbitrary"
-version = "1.3.0"
+version = "1.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2d098ff73c1ca148721f37baad5ea6a465a13f9573aba8641fbbbae8164a54e"
+checksum = "7d5a26814d8dcb93b0e5a0ff3c6d80a8843bafb21b39e8e18a6f05471870e110"
[[package]]
name = "ark-bls12-377"
@@ -537,7 +530,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "db02d390bf6643fb404d3d22d31aee1c4bc4459600aef9113833d17e786c6e44"
dependencies = [
- "quote",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -547,7 +540,7 @@ version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348"
dependencies = [
- "quote",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -559,7 +552,7 @@ checksum = "db2fd794a08ccb318058009eefdf15bcaaaaf6f8161eb3345f907222bac38b20"
dependencies = [
"num-bigint",
"num-traits",
- "quote",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -571,8 +564,8 @@ checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565"
dependencies = [
"num-bigint",
"num-traits",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -673,8 +666,8 @@ version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ae3281bc6d0fd7e549af32b52511e1302185bd688fd3359fa36423346ff682ea"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -685,7 +678,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1df2c09229cbc5a028b1d70e00fdb2acee28b1055dfb5ca73eea49c5a25c4e7c"
dependencies = [
"num-traits",
- "rand",
+ "rand 0.8.5",
]
[[package]]
@@ -695,7 +688,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185"
dependencies = [
"num-traits",
- "rand",
+ "rand 0.8.5",
"rayon",
]
@@ -739,12 +732,6 @@ dependencies = [
"nodrop",
]
-[[package]]
-name = "arrayvec"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b"
-
[[package]]
name = "arrayvec"
version = "0.7.4"
@@ -773,8 +760,8 @@ version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "726535892e8eae7e70657b4c8ea93d26b8553afb1ce617caee529ef96d7dee6c"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
"synstructure",
]
@@ -785,8 +772,8 @@ version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2777730b2039ac0f95f093556e61b6d26cebed5393ca6f152717777cec3a42ed"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -822,6 +809,8 @@ dependencies = [
"parachains-common",
"rococo-emulated-chain",
"sp-core",
+ "staging-xcm",
+ "testnet-parachains-constants",
]
[[package]]
@@ -840,6 +829,7 @@ dependencies = [
"pallet-xcm",
"parachains-common",
"parity-scale-codec",
+ "penpal-runtime",
"rococo-runtime",
"rococo-system-emulated-network",
"sp-runtime",
@@ -849,7 +839,7 @@ dependencies = [
[[package]]
name = "asset-hub-rococo-runtime"
-version = "0.9.420"
+version = "0.11.0"
dependencies = [
"asset-test-utils",
"assets-common",
@@ -864,6 +854,7 @@ dependencies = [
"cumulus-pallet-xcmp-queue",
"cumulus-primitives-aura",
"cumulus-primitives-core",
+ "cumulus-primitives-storage-weight-reclaim",
"cumulus-primitives-utility",
"frame-benchmarking",
"frame-executive",
@@ -914,8 +905,8 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"sp-transaction-pool",
"sp-version",
"sp-weights",
@@ -924,6 +915,7 @@ dependencies = [
"staging-xcm-builder",
"staging-xcm-executor",
"substrate-wasm-builder",
+ "testnet-parachains-constants",
]
[[package]]
@@ -936,6 +928,8 @@ dependencies = [
"frame-support",
"parachains-common",
"sp-core",
+ "staging-xcm",
+ "testnet-parachains-constants",
"westend-emulated-chain",
]
@@ -958,6 +952,7 @@ dependencies = [
"pallet-xcm",
"parachains-common",
"parity-scale-codec",
+ "penpal-runtime",
"polkadot-runtime-common",
"sp-runtime",
"staging-xcm",
@@ -968,7 +963,7 @@ dependencies = [
[[package]]
name = "asset-hub-westend-runtime"
-version = "0.9.420"
+version = "0.15.0"
dependencies = [
"asset-test-utils",
"assets-common",
@@ -981,7 +976,9 @@ dependencies = [
"cumulus-pallet-session-benchmarking",
"cumulus-pallet-xcm",
"cumulus-pallet-xcmp-queue",
+ "cumulus-primitives-aura",
"cumulus-primitives-core",
+ "cumulus-primitives-storage-weight-reclaim",
"cumulus-primitives-utility",
"frame-benchmarking",
"frame-executive",
@@ -1029,8 +1026,8 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"sp-transaction-pool",
"sp-version",
"staging-parachain-info",
@@ -1038,12 +1035,13 @@ dependencies = [
"staging-xcm-builder",
"staging-xcm-executor",
"substrate-wasm-builder",
+ "testnet-parachains-constants",
"westend-runtime-constants",
]
[[package]]
name = "asset-test-utils"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"cumulus-pallet-parachain-system",
"cumulus-pallet-xcmp-queue",
@@ -1051,11 +1049,11 @@ dependencies = [
"frame-support",
"frame-system",
"hex-literal",
- "pallet-asset-conversion",
"pallet-assets",
"pallet-balances",
"pallet-collator-selection",
"pallet-session",
+ "pallet-timestamp",
"pallet-xcm",
"pallet-xcm-bridge-hub-router",
"parachains-common",
@@ -1063,7 +1061,7 @@ dependencies = [
"parity-scale-codec",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-parachain-info",
"staging-xcm",
"staging-xcm-builder",
@@ -1073,7 +1071,7 @@ dependencies = [
[[package]]
name = "assets-common"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"cumulus-primitives-core",
"frame-support",
@@ -1086,13 +1084,23 @@ dependencies = [
"scale-info",
"sp-api",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
"staging-xcm-builder",
"staging-xcm-executor",
"substrate-wasm-builder",
]
+[[package]]
+name = "async-attributes"
+version = "1.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a3203e79f4dd9bdda415ed03cf14dae5a2bf775c683a00f94e9cd1faf0f596e5"
+dependencies = [
+ "quote 1.0.35",
+ "syn 1.0.109",
+]
+
[[package]]
name = "async-channel"
version = "1.9.0"
@@ -1100,7 +1108,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35"
dependencies = [
"concurrent-queue",
- "event-listener",
+ "event-listener 2.5.3",
"futures-core",
]
@@ -1110,7 +1118,7 @@ version = "1.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6fa3dc5f2a8564f07759c008b9109dc0d39de92a88d5588b8a5036d286383afb"
dependencies = [
- "async-lock",
+ "async-lock 2.8.0",
"async-task",
"concurrent-queue",
"fastrand 1.9.0",
@@ -1124,19 +1132,34 @@ version = "1.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "279cf904654eeebfa37ac9bb1598880884924aab82e290aa65c9e77a0e142e06"
dependencies = [
- "async-lock",
+ "async-lock 2.8.0",
"autocfg",
"blocking",
"futures-lite",
]
+[[package]]
+name = "async-global-executor"
+version = "2.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f1b6f5d7df27bd294849f8eec66ecfc63d11814df7a4f5d74168a2394467b776"
+dependencies = [
+ "async-channel",
+ "async-executor",
+ "async-io",
+ "async-lock 2.8.0",
+ "blocking",
+ "futures-lite",
+ "once_cell",
+]
+
[[package]]
name = "async-io"
version = "1.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af"
dependencies = [
- "async-lock",
+ "async-lock 2.8.0",
"autocfg",
"cfg-if",
"concurrent-queue",
@@ -1156,7 +1179,18 @@ version = "2.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b"
dependencies = [
- "event-listener",
+ "event-listener 2.5.3",
+]
+
+[[package]]
+name = "async-lock"
+version = "3.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d034b430882f8381900d3fe6f0aaa3ad94f2cb4ac519b429692a1bc2dda4ae7b"
+dependencies = [
+ "event-listener 4.0.3",
+ "event-listener-strategy",
+ "pin-project-lite 0.2.12",
]
[[package]]
@@ -1178,17 +1212,44 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7a9d28b1d97e08915212e2e45310d47854eafa69600756fc735fb788f75199c9"
dependencies = [
"async-io",
- "async-lock",
+ "async-lock 2.8.0",
"autocfg",
"blocking",
"cfg-if",
- "event-listener",
+ "event-listener 2.5.3",
"futures-lite",
"rustix 0.37.23",
"signal-hook",
"windows-sys 0.48.0",
]
+[[package]]
+name = "async-std"
+version = "1.12.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "62565bb4402e926b29953c785397c6dc0391b7b446e45008b0049eb43cec6f5d"
+dependencies = [
+ "async-attributes",
+ "async-channel",
+ "async-global-executor",
+ "async-io",
+ "async-lock 2.8.0",
+ "crossbeam-utils",
+ "futures-channel",
+ "futures-core",
+ "futures-io",
+ "futures-lite",
+ "gloo-timers",
+ "kv-log-macro",
+ "log",
+ "memchr",
+ "once_cell",
+ "pin-project-lite 0.2.12",
+ "pin-utils",
+ "slab",
+ "wasm-bindgen-futures",
+]
+
[[package]]
name = "async-stream"
version = "0.3.5"
@@ -1206,9 +1267,9 @@ version = "0.3.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -1219,13 +1280,13 @@ checksum = "ecc7ab41815b3c653ccd2978ec3255c81349336702dfdf62ee6f7069b12a3aae"
[[package]]
name = "async-trait"
-version = "0.1.74"
+version = "0.1.79"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9"
+checksum = "a507401cad91ec6a857ed5513a2073c82a9b9048762b885bb98655b306964681"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -1271,8 +1332,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fee3da8ef1276b0bee5dd1c7258010d8fffd31801447323115a25560e1327b89"
dependencies = [
"proc-macro-error",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -1282,6 +1343,17 @@ version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+[[package]]
+name = "backoff"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1"
+dependencies = [
+ "getrandom 0.2.10",
+ "instant",
+ "rand 0.8.5",
+]
+
[[package]]
name = "backtrace"
version = "0.3.69"
@@ -1310,7 +1382,7 @@ dependencies = [
"ark-std 0.4.0",
"dleq_vrf",
"fflonk",
- "merlin 3.0.0",
+ "merlin",
"rand_chacha 0.3.1",
"rand_core 0.6.4",
"ring 0.1.0",
@@ -1370,10 +1442,10 @@ dependencies = [
[[package]]
name = "binary-merkle-tree"
-version = "4.0.0-dev"
+version = "13.0.0"
dependencies = [
"array-bytes 6.1.0",
- "env_logger 0.9.3",
+ "env_logger 0.11.3",
"hash-db",
"log",
"sp-core",
@@ -1402,12 +1474,12 @@ dependencies = [
"lazycell",
"peeking_take_while",
"prettyplease 0.2.12",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"regex",
"rustc-hash",
"shlex",
- "syn 2.0.48",
+ "syn 2.0.53",
]
[[package]]
@@ -1416,9 +1488,7 @@ version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "93f2635620bf0b9d4576eb7bb9a38a55df78bd1205d26fa994b25911a69f212f"
dependencies = [
- "bitcoin_hashes",
- "rand",
- "rand_core 0.6.4",
+ "bitcoin_hashes 0.11.0",
"serde",
"unicode-normalization",
]
@@ -1438,12 +1508,28 @@ version = "0.6.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb"
+[[package]]
+name = "bitcoin-internals"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9425c3bf7089c983facbae04de54513cce73b41c7f9ff8c845b54e7bc64ebbfb"
+
[[package]]
name = "bitcoin_hashes"
version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "90064b8dee6815a6470d60bad07bbbaee885c0e12d04177138fa3291a01b7bc4"
+[[package]]
+name = "bitcoin_hashes"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1930a4dabfebb8d7d9992db18ebe3ae2876f0a305fab206fd168df931ede293b"
+dependencies = [
+ "bitcoin-internals",
+ "hex-conservative",
+]
+
[[package]]
name = "bitflags"
version = "1.3.2"
@@ -1535,18 +1621,6 @@ dependencies = [
"constant_time_eq 0.3.0",
]
-[[package]]
-name = "block-buffer"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b"
-dependencies = [
- "block-padding",
- "byte-tools",
- "byteorder",
- "generic-array 0.12.4",
-]
-
[[package]]
name = "block-buffer"
version = "0.9.0"
@@ -1565,15 +1639,6 @@ dependencies = [
"generic-array 0.14.7",
]
-[[package]]
-name = "block-padding"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5"
-dependencies = [
- "byte-tools",
-]
-
[[package]]
name = "blocking"
version = "1.3.1"
@@ -1581,7 +1646,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "77231a1c8f801696fc0123ec6150ce92cffb8e164a02afb9c8ddee0e9b65ad65"
dependencies = [
"async-channel",
- "async-lock",
+ "async-lock 2.8.0",
"async-task",
"atomic-waker",
"fastrand 1.9.0",
@@ -1591,9 +1656,9 @@ dependencies = [
[[package]]
name = "bounded-collections"
-version = "0.1.9"
+version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca548b6163b872067dc5eb82fd130c56881435e30367d2073594a3d9744120dd"
+checksum = "d32385ecb91a31bddaf908e8dcf4a15aef1bcd3913cc03ebfad02ff6d568abc1"
dependencies = [
"log",
"parity-scale-codec",
@@ -1613,7 +1678,7 @@ dependencies = [
[[package]]
name = "bp-asset-hub-rococo"
-version = "0.1.0"
+version = "0.4.0"
dependencies = [
"bp-xcm-bridge-hub-router",
"frame-support",
@@ -1623,7 +1688,7 @@ dependencies = [
[[package]]
name = "bp-asset-hub-westend"
-version = "0.1.0"
+version = "0.3.0"
dependencies = [
"bp-xcm-bridge-hub-router",
"frame-support",
@@ -1632,8 +1697,25 @@ dependencies = [
]
[[package]]
-name = "bp-bridge-hub-cumulus"
+name = "bp-beefy"
version = "0.1.0"
+dependencies = [
+ "binary-merkle-tree",
+ "bp-runtime",
+ "frame-support",
+ "pallet-beefy-mmr",
+ "pallet-mmr",
+ "parity-scale-codec",
+ "scale-info",
+ "serde",
+ "sp-consensus-beefy",
+ "sp-runtime",
+ "sp-std 14.0.0",
+]
+
+[[package]]
+name = "bp-bridge-hub-cumulus"
+version = "0.7.0"
dependencies = [
"bp-messages",
"bp-polkadot-core",
@@ -1642,12 +1724,12 @@ dependencies = [
"frame-system",
"polkadot-primitives",
"sp-api",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "bp-bridge-hub-kusama"
-version = "0.1.0"
+version = "0.6.0"
dependencies = [
"bp-bridge-hub-cumulus",
"bp-messages",
@@ -1655,12 +1737,12 @@ dependencies = [
"frame-support",
"sp-api",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "bp-bridge-hub-polkadot"
-version = "0.1.0"
+version = "0.6.0"
dependencies = [
"bp-bridge-hub-cumulus",
"bp-messages",
@@ -1668,12 +1750,12 @@ dependencies = [
"frame-support",
"sp-api",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "bp-bridge-hub-rococo"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"bp-bridge-hub-cumulus",
"bp-messages",
@@ -1681,12 +1763,12 @@ dependencies = [
"frame-support",
"sp-api",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "bp-bridge-hub-westend"
-version = "0.1.0"
+version = "0.3.0"
dependencies = [
"bp-bridge-hub-cumulus",
"bp-messages",
@@ -1694,12 +1776,12 @@ dependencies = [
"frame-support",
"sp-api",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "bp-header-chain"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"bp-runtime",
"bp-test-utils",
@@ -1713,24 +1795,24 @@ dependencies = [
"sp-consensus-grandpa",
"sp-core",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "bp-kusama"
-version = "0.1.0"
+version = "0.5.0"
dependencies = [
"bp-header-chain",
"bp-polkadot-core",
"bp-runtime",
"frame-support",
"sp-api",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "bp-messages"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"bp-header-chain",
"bp-runtime",
@@ -1741,12 +1823,12 @@ dependencies = [
"scale-info",
"serde",
"sp-core",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "bp-parachains"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"bp-header-chain",
"bp-polkadot-core",
@@ -1757,24 +1839,24 @@ dependencies = [
"scale-info",
"sp-core",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "bp-polkadot"
-version = "0.1.0"
+version = "0.5.0"
dependencies = [
"bp-header-chain",
"bp-polkadot-core",
"bp-runtime",
"frame-support",
"sp-api",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "bp-polkadot-bulletin"
-version = "0.1.0"
+version = "0.4.0"
dependencies = [
"bp-header-chain",
"bp-messages",
@@ -1786,12 +1868,12 @@ dependencies = [
"scale-info",
"sp-api",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "bp-polkadot-core"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"bp-messages",
"bp-runtime",
@@ -1804,12 +1886,12 @@ dependencies = [
"serde",
"sp-core",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "bp-relayers"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"bp-messages",
"bp-runtime",
@@ -1819,24 +1901,24 @@ dependencies = [
"parity-scale-codec",
"scale-info",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "bp-rococo"
-version = "0.1.0"
+version = "0.6.0"
dependencies = [
"bp-header-chain",
"bp-polkadot-core",
"bp-runtime",
"frame-support",
"sp-api",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "bp-runtime"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"frame-support",
"frame-system",
@@ -1852,52 +1934,52 @@ dependencies = [
"sp-io",
"sp-runtime",
"sp-state-machine",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-trie",
"trie-db",
]
[[package]]
name = "bp-test-utils"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"bp-header-chain",
"bp-parachains",
"bp-polkadot-core",
"bp-runtime",
- "ed25519-dalek",
+ "ed25519-dalek 2.1.0",
"finality-grandpa",
"parity-scale-codec",
"sp-application-crypto",
"sp-consensus-grandpa",
"sp-core",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-trie",
]
[[package]]
name = "bp-westend"
-version = "0.1.0"
+version = "0.3.0"
dependencies = [
"bp-header-chain",
"bp-polkadot-core",
"bp-runtime",
"frame-support",
"sp-api",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "bp-xcm-bridge-hub"
-version = "0.1.0"
+version = "0.2.0"
dependencies = [
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "bp-xcm-bridge-hub-router"
-version = "0.1.0"
+version = "0.6.0"
dependencies = [
"parity-scale-codec",
"scale-info",
@@ -1917,7 +1999,7 @@ dependencies = [
"snowbridge-core",
"sp-core",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
]
@@ -1931,6 +2013,7 @@ dependencies = [
"frame-support",
"parachains-common",
"sp-core",
+ "testnet-parachains-constants",
]
[[package]]
@@ -1938,7 +2021,6 @@ name = "bridge-hub-rococo-integration-tests"
version = "1.0.0"
dependencies = [
"asset-hub-rococo-runtime",
- "bp-messages",
"bridge-hub-rococo-runtime",
"cumulus-pallet-xcmp-queue",
"emulated-integration-tests-common",
@@ -1956,6 +2038,7 @@ dependencies = [
"rococo-westend-system-emulated-network",
"scale-info",
"snowbridge-core",
+ "snowbridge-pallet-inbound-queue-fixtures",
"snowbridge-pallet-outbound-queue",
"snowbridge-pallet-system",
"snowbridge-router-primitives",
@@ -1963,11 +2046,12 @@ dependencies = [
"sp-runtime",
"staging-xcm",
"staging-xcm-executor",
+ "testnet-parachains-constants",
]
[[package]]
name = "bridge-hub-rococo-runtime"
-version = "0.1.0"
+version = "0.5.0"
dependencies = [
"bp-asset-hub-rococo",
"bp-asset-hub-westend",
@@ -1991,7 +2075,9 @@ dependencies = [
"cumulus-pallet-session-benchmarking",
"cumulus-pallet-xcm",
"cumulus-pallet-xcmp-queue",
+ "cumulus-primitives-aura",
"cumulus-primitives-core",
+ "cumulus-primitives-storage-weight-reclaim",
"cumulus-primitives-utility",
"frame-benchmarking",
"frame-executive",
@@ -2049,8 +2135,8 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"sp-transaction-pool",
"sp-version",
"staging-parachain-info",
@@ -2059,11 +2145,12 @@ dependencies = [
"staging-xcm-executor",
"static_assertions",
"substrate-wasm-builder",
+ "testnet-parachains-constants",
]
[[package]]
name = "bridge-hub-test-utils"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"asset-test-utils",
"bp-header-chain",
@@ -2084,6 +2171,7 @@ dependencies = [
"pallet-bridge-messages",
"pallet-bridge-parachains",
"pallet-bridge-relayers",
+ "pallet-timestamp",
"pallet-utility",
"parachains-common",
"parachains-runtimes-test-utils",
@@ -2092,8 +2180,8 @@ dependencies = [
"sp-io",
"sp-keyring",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"staging-xcm",
"staging-xcm-builder",
"staging-xcm-executor",
@@ -2109,13 +2197,13 @@ dependencies = [
"frame-support",
"parachains-common",
"sp-core",
+ "testnet-parachains-constants",
]
[[package]]
name = "bridge-hub-westend-integration-tests"
version = "1.0.0"
dependencies = [
- "bp-messages",
"bridge-hub-westend-runtime",
"cumulus-pallet-xcmp-queue",
"emulated-integration-tests-common",
@@ -2127,6 +2215,7 @@ dependencies = [
"pallet-message-queue",
"pallet-xcm",
"parachains-common",
+ "parity-scale-codec",
"rococo-westend-system-emulated-network",
"sp-runtime",
"staging-xcm",
@@ -2135,7 +2224,7 @@ dependencies = [
[[package]]
name = "bridge-hub-westend-runtime"
-version = "0.1.0"
+version = "0.2.0"
dependencies = [
"bp-asset-hub-rococo",
"bp-asset-hub-westend",
@@ -2157,7 +2246,9 @@ dependencies = [
"cumulus-pallet-session-benchmarking",
"cumulus-pallet-xcm",
"cumulus-pallet-xcmp-queue",
+ "cumulus-primitives-aura",
"cumulus-primitives-core",
+ "cumulus-primitives-storage-weight-reclaim",
"cumulus-primitives-utility",
"frame-benchmarking",
"frame-executive",
@@ -2203,8 +2294,8 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"sp-transaction-pool",
"sp-version",
"staging-parachain-info",
@@ -2213,12 +2304,13 @@ dependencies = [
"staging-xcm-executor",
"static_assertions",
"substrate-wasm-builder",
+ "testnet-parachains-constants",
"westend-runtime-constants",
]
[[package]]
name = "bridge-runtime-common"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"bp-header-chain",
"bp-messages",
@@ -2246,7 +2338,7 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-trie",
"staging-xcm",
"staging-xcm-builder",
@@ -2383,6 +2475,12 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
+[[package]]
+name = "castaway"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a2698f953def977c68f935bb0dfa959375ad4638570e969e2f1e9f433cbf1af6"
+
[[package]]
name = "cc"
version = "1.0.83"
@@ -2523,6 +2621,19 @@ dependencies = [
"unsigned-varint",
]
+[[package]]
+name = "cid"
+version = "0.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fd94671561e36e4e7de75f753f577edafb0e7c05d6e4547229fdf7938fbcd2c3"
+dependencies = [
+ "core2",
+ "multibase",
+ "multihash 0.18.1",
+ "serde",
+ "unsigned-varint",
+]
+
[[package]]
name = "cipher"
version = "0.2.5"
@@ -2573,9 +2684,24 @@ dependencies = [
[[package]]
name = "clap"
-version = "3.2.25"
+version = "2.34.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123"
+checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
+dependencies = [
+ "ansi_term",
+ "atty",
+ "bitflags 1.3.2",
+ "strsim 0.8.0",
+ "textwrap 0.11.0",
+ "unicode-width",
+ "vec_map",
+]
+
+[[package]]
+name = "clap"
+version = "3.2.25"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123"
dependencies = [
"atty",
"bitflags 1.3.2",
@@ -2583,19 +2709,19 @@ dependencies = [
"clap_lex 0.2.4",
"indexmap 1.9.3",
"once_cell",
- "strsim",
+ "strsim 0.10.0",
"termcolor",
- "textwrap",
+ "textwrap 0.16.0",
]
[[package]]
name = "clap"
-version = "4.4.18"
+version = "4.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e578d6ec4194633722ccf9544794b71b1385c3c027efe0c55db226fc880865c"
+checksum = "949626d00e063efc93b6dca932419ceb5432f99769911c0b995f7e884c778813"
dependencies = [
"clap_builder",
- "clap_derive 4.4.7",
+ "clap_derive 4.5.3",
]
[[package]]
@@ -2609,14 +2735,14 @@ dependencies = [
[[package]]
name = "clap_builder"
-version = "4.4.18"
+version = "4.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4df4df40ec50c46000231c914968278b1eb05098cf8f1b3a518a95030e71d1c7"
+checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4"
dependencies = [
"anstream",
"anstyle",
- "clap_lex 0.6.0",
- "strsim",
+ "clap_lex 0.7.0",
+ "strsim 0.11.0",
"terminal_size",
]
@@ -2626,7 +2752,7 @@ version = "4.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "586a385f7ef2f8b4d86bddaa0c094794e7ccbfe5ffef1f434fe928143fc783a5"
dependencies = [
- "clap 4.4.18",
+ "clap 4.5.3",
]
[[package]]
@@ -2635,23 +2761,23 @@ version = "3.2.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ae6371b8bdc8b7d3959e9cf7b22d4435ef3e79e138688421ec654acf8c81b008"
dependencies = [
- "heck",
+ "heck 0.4.1",
"proc-macro-error",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
[[package]]
name = "clap_derive"
-version = "4.4.7"
+version = "4.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442"
+checksum = "90239a040c80f5e14809ca132ddc4176ab33d5e17e49691793296e3fcb34d72f"
dependencies = [
- "heck",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "heck 0.5.0",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -2665,9 +2791,9 @@ dependencies = [
[[package]]
name = "clap_lex"
-version = "0.6.0"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1"
+checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce"
[[package]]
name = "coarsetime"
@@ -2701,18 +2827,21 @@ dependencies = [
"frame-support",
"parachains-common",
"sp-core",
+ "testnet-parachains-constants",
]
[[package]]
name = "collectives-westend-runtime"
-version = "1.0.0"
+version = "3.0.0"
dependencies = [
"cumulus-pallet-aura-ext",
"cumulus-pallet-parachain-system",
"cumulus-pallet-session-benchmarking",
"cumulus-pallet-xcm",
"cumulus-pallet-xcmp-queue",
+ "cumulus-primitives-aura",
"cumulus-primitives-core",
+ "cumulus-primitives-storage-weight-reclaim",
"cumulus-primitives-utility",
"frame-benchmarking",
"frame-executive",
@@ -2763,8 +2892,8 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"sp-transaction-pool",
"sp-version",
"staging-parachain-info",
@@ -2772,6 +2901,7 @@ dependencies = [
"staging-xcm-builder",
"staging-xcm-executor",
"substrate-wasm-builder",
+ "testnet-parachains-constants",
"westend-runtime-constants",
]
@@ -2804,8 +2934,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d51beaa537d73d2d1ff34ee70bc095f170420ab2ec5d687ecd3ec2b0d092514b"
dependencies = [
"nom",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -2826,6 +2956,16 @@ dependencies = [
"windows-sys 0.48.0",
]
+[[package]]
+name = "combine"
+version = "4.6.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4"
+dependencies = [
+ "bytes",
+ "memchr",
+]
+
[[package]]
name = "comfy-table"
version = "7.1.0"
@@ -2849,7 +2989,7 @@ dependencies = [
"ark-std 0.4.0",
"fflonk",
"getrandom_or_panic",
- "merlin 3.0.0",
+ "merlin",
"rand_chacha 0.3.1",
]
@@ -2958,14 +3098,16 @@ checksum = "f272d0c4cf831b4fa80ee529c7707f76585986e910e1fbce1d7921970bc1a241"
[[package]]
name = "contracts-rococo-runtime"
-version = "0.2.0"
+version = "0.8.0"
dependencies = [
"cumulus-pallet-aura-ext",
"cumulus-pallet-parachain-system",
"cumulus-pallet-session-benchmarking",
"cumulus-pallet-xcm",
"cumulus-pallet-xcmp-queue",
+ "cumulus-primitives-aura",
"cumulus-primitives-core",
+ "cumulus-primitives-storage-weight-reclaim",
"cumulus-primitives-utility",
"frame-benchmarking",
"frame-executive",
@@ -3006,8 +3148,8 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"sp-transaction-pool",
"sp-version",
"staging-parachain-info",
@@ -3015,6 +3157,7 @@ dependencies = [
"staging-xcm-builder",
"staging-xcm-executor",
"substrate-wasm-builder",
+ "testnet-parachains-constants",
]
[[package]]
@@ -3057,7 +3200,9 @@ dependencies = [
"cumulus-pallet-session-benchmarking",
"cumulus-pallet-xcm",
"cumulus-pallet-xcmp-queue",
+ "cumulus-primitives-aura",
"cumulus-primitives-core",
+ "cumulus-primitives-storage-weight-reclaim",
"cumulus-primitives-utility",
"frame-benchmarking",
"frame-executive",
@@ -3085,7 +3230,6 @@ dependencies = [
"pallet-xcm-benchmarks",
"parachains-common",
"parity-scale-codec",
- "polkadot-core-primitives",
"polkadot-parachain-primitives",
"polkadot-runtime-common",
"rococo-runtime-constants",
@@ -3100,8 +3244,8 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"sp-transaction-pool",
"sp-version",
"staging-parachain-info",
@@ -3109,6 +3253,7 @@ dependencies = [
"staging-xcm-builder",
"staging-xcm-executor",
"substrate-wasm-builder",
+ "testnet-parachains-constants",
]
[[package]]
@@ -3120,7 +3265,9 @@ dependencies = [
"cumulus-pallet-session-benchmarking",
"cumulus-pallet-xcm",
"cumulus-pallet-xcmp-queue",
+ "cumulus-primitives-aura",
"cumulus-primitives-core",
+ "cumulus-primitives-storage-weight-reclaim",
"cumulus-primitives-utility",
"frame-benchmarking",
"frame-executive",
@@ -3134,11 +3281,11 @@ dependencies = [
"pallet-aura",
"pallet-authorship",
"pallet-balances",
+ "pallet-broker",
"pallet-collator-selection",
"pallet-message-queue",
"pallet-multisig",
"pallet-session",
- "pallet-sudo",
"pallet-timestamp",
"pallet-transaction-payment",
"pallet-transaction-payment-rpc-runtime-api",
@@ -3147,7 +3294,6 @@ dependencies = [
"pallet-xcm-benchmarks",
"parachains-common",
"parity-scale-codec",
- "polkadot-core-primitives",
"polkadot-parachain-primitives",
"polkadot-runtime-common",
"scale-info",
@@ -3161,8 +3307,8 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"sp-transaction-pool",
"sp-version",
"staging-parachain-info",
@@ -3170,6 +3316,7 @@ dependencies = [
"staging-xcm-builder",
"staging-xcm-executor",
"substrate-wasm-builder",
+ "testnet-parachains-constants",
"westend-runtime-constants",
]
@@ -3308,6 +3455,21 @@ dependencies = [
"wasmtime-types",
]
+[[package]]
+name = "crc"
+version = "3.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c2b432c56615136f8dba245fed7ec3d5518c500a31108661067e61e72fe7e6bc"
+dependencies = [
+ "crc-catalog",
+]
+
+[[package]]
+name = "crc-catalog"
+version = "2.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5"
+
[[package]]
name = "crc32fast"
version = "1.3.2"
@@ -3354,7 +3516,7 @@ dependencies = [
"anes",
"cast",
"ciborium",
- "clap 4.4.18",
+ "clap 4.5.3",
"criterion-plot",
"futures",
"is-terminal",
@@ -3383,16 +3545,6 @@ dependencies = [
"itertools 0.10.5",
]
-[[package]]
-name = "crossbeam-channel"
-version = "0.5.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200"
-dependencies = [
- "cfg-if",
- "crossbeam-utils",
-]
-
[[package]]
name = "crossbeam-deque"
version = "0.8.3"
@@ -3450,7 +3602,7 @@ checksum = "cf4c2f4e1afd912bc40bfd6fed5d9dc1f288e0ba01bfcc835cc5bc3eb13efe15"
dependencies = [
"generic-array 0.14.7",
"rand_core 0.6.4",
- "subtle 2.4.1",
+ "subtle 2.5.0",
"zeroize",
]
@@ -3482,24 +3634,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab"
dependencies = [
"generic-array 0.14.7",
- "subtle 2.4.1",
-]
-
-[[package]]
-name = "crypto-mac"
-version = "0.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1d1a86f49236c215f271d40892d5fc950490551400b02ef360692c29815c714"
-dependencies = [
- "generic-array 0.14.7",
- "subtle 2.4.1",
+ "subtle 2.5.0",
]
[[package]]
name = "ctr"
-version = "0.8.0"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "049bb91fb4aaf0e3c7efa6cd5ef877dbbbd15b39dad06d9948de4ec8a75761ea"
+checksum = "a232f92a03f37dd7d7dd2adc67166c77e9cd88de5b019b9a9eecfaeaf7bfd481"
dependencies = [
"cipher 0.3.0",
]
@@ -3515,9 +3657,9 @@ dependencies = [
[[package]]
name = "cumulus-client-cli"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
- "clap 4.4.18",
+ "clap 4.5.3",
"parity-scale-codec",
"sc-chain-spec",
"sc-cli",
@@ -3531,7 +3673,7 @@ dependencies = [
[[package]]
name = "cumulus-client-collator"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"async-trait",
"cumulus-client-consensus-common",
@@ -3555,13 +3697,13 @@ dependencies = [
"sp-maybe-compressed-blob",
"sp-runtime",
"sp-state-machine",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"tracing",
]
[[package]]
name = "cumulus-client-consensus-aura"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"async-trait",
"cumulus-client-collator",
@@ -3602,7 +3744,7 @@ dependencies = [
[[package]]
name = "cumulus-client-consensus-common"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"async-trait",
"cumulus-client-pov-recovery",
@@ -3626,7 +3768,7 @@ dependencies = [
"sp-core",
"sp-runtime",
"sp-timestamp",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"sp-trie",
"substrate-prometheus-endpoint",
"tracing",
@@ -3634,7 +3776,7 @@ dependencies = [
[[package]]
name = "cumulus-client-consensus-proposer"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"anyhow",
"async-trait",
@@ -3648,7 +3790,7 @@ dependencies = [
[[package]]
name = "cumulus-client-consensus-relay-chain"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"async-trait",
"cumulus-client-consensus-common",
@@ -3670,7 +3812,7 @@ dependencies = [
[[package]]
name = "cumulus-client-network"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"async-trait",
"cumulus-primitives-core",
@@ -3718,15 +3860,15 @@ dependencies = [
"sp-inherents",
"sp-runtime",
"sp-state-machine",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"sp-trie",
"tracing",
]
[[package]]
name = "cumulus-client-pov-recovery"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"async-trait",
"cumulus-primitives-core",
@@ -3740,7 +3882,7 @@ dependencies = [
"polkadot-overseer",
"polkadot-primitives",
"portpicker",
- "rand",
+ "rand 0.8.5",
"sc-cli",
"sc-client-api",
"sc-consensus",
@@ -3754,7 +3896,7 @@ dependencies = [
[[package]]
name = "cumulus-client-service"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"cumulus-client-cli",
"cumulus-client-collator",
@@ -3783,13 +3925,14 @@ dependencies = [
"sp-blockchain",
"sp-consensus",
"sp-core",
+ "sp-io",
"sp-runtime",
"sp-transaction-pool",
]
[[package]]
name = "cumulus-pallet-aura-ext"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"cumulus-pallet-parachain-system",
"frame-support",
@@ -3801,12 +3944,12 @@ dependencies = [
"sp-application-crypto",
"sp-consensus-aura",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "cumulus-pallet-dmp-queue"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"cumulus-primitives-core",
"frame-benchmarking",
@@ -3818,14 +3961,14 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"staging-xcm",
]
[[package]]
name = "cumulus-pallet-parachain-system"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"assert_matches",
"bytes",
@@ -3835,6 +3978,7 @@ dependencies = [
"cumulus-primitives-proof-size-hostfunction",
"cumulus-test-client",
"cumulus-test-relay-sproof-builder",
+ "cumulus-test-runtime",
"environmental",
"frame-benchmarking",
"frame-support",
@@ -3847,20 +3991,22 @@ dependencies = [
"pallet-message-queue",
"parity-scale-codec",
"polkadot-parachain-primitives",
+ "polkadot-runtime-common",
"polkadot-runtime-parachains",
- "rand",
+ "rand 0.8.5",
"sc-client-api",
"scale-info",
+ "sp-consensus-slots",
"sp-core",
"sp-crypto-hashing",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
"sp-inherents",
"sp-io",
"sp-keyring",
"sp-runtime",
"sp-state-machine",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"sp-trie",
"sp-version",
"staging-xcm",
@@ -3870,17 +4016,17 @@ dependencies = [
[[package]]
name = "cumulus-pallet-parachain-system-proc-macro"
-version = "0.1.0"
+version = "0.6.0"
dependencies = [
"proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
name = "cumulus-pallet-session-benchmarking"
-version = "3.0.0"
+version = "9.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -3888,12 +4034,12 @@ dependencies = [
"pallet-session",
"parity-scale-codec",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "cumulus-pallet-solo-to-para"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"cumulus-pallet-parachain-system",
"frame-support",
@@ -3903,12 +4049,12 @@ dependencies = [
"polkadot-primitives",
"scale-info",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "cumulus-pallet-xcm"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"cumulus-primitives-core",
"frame-support",
@@ -3917,13 +4063,13 @@ dependencies = [
"scale-info",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
]
[[package]]
name = "cumulus-pallet-xcmp-queue"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"bounded-collections",
"bp-xcm-bridge-hub-router",
@@ -3942,7 +4088,7 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
"staging-xcm-builder",
"staging-xcm-executor",
@@ -3950,7 +4096,7 @@ dependencies = [
[[package]]
name = "cumulus-ping"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"cumulus-pallet-xcm",
"cumulus-primitives-core",
@@ -3959,13 +4105,13 @@ dependencies = [
"parity-scale-codec",
"scale-info",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
]
[[package]]
name = "cumulus-primitives-aura"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"parity-scale-codec",
"polkadot-core-primitives",
@@ -3973,12 +4119,12 @@ dependencies = [
"sp-api",
"sp-consensus-aura",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "cumulus-primitives-core"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"parity-scale-codec",
"polkadot-core-primitives",
@@ -3987,14 +4133,14 @@ dependencies = [
"scale-info",
"sp-api",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-trie",
"staging-xcm",
]
[[package]]
name = "cumulus-primitives-parachain-inherent"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"async-trait",
"cumulus-primitives-core",
@@ -4004,49 +4150,67 @@ dependencies = [
"sp-inherents",
"sp-runtime",
"sp-state-machine",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-trie",
]
[[package]]
name = "cumulus-primitives-proof-size-hostfunction"
-version = "0.1.0"
+version = "0.2.0"
dependencies = [
"sp-core",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
"sp-io",
- "sp-runtime-interface 17.0.0",
+ "sp-runtime-interface 24.0.0",
"sp-state-machine",
"sp-trie",
]
+[[package]]
+name = "cumulus-primitives-storage-weight-reclaim"
+version = "1.0.0"
+dependencies = [
+ "cumulus-primitives-core",
+ "cumulus-primitives-proof-size-hostfunction",
+ "cumulus-test-runtime",
+ "docify",
+ "frame-support",
+ "frame-system",
+ "log",
+ "parity-scale-codec",
+ "scale-info",
+ "sp-io",
+ "sp-runtime",
+ "sp-std 14.0.0",
+ "sp-trie",
+]
+
[[package]]
name = "cumulus-primitives-timestamp"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"cumulus-primitives-core",
"futures",
"parity-scale-codec",
"sp-inherents",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-timestamp",
]
[[package]]
name = "cumulus-primitives-utility"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"cumulus-primitives-core",
"frame-support",
"log",
"pallet-asset-conversion",
- "pallet-xcm-benchmarks",
"parity-scale-codec",
"polkadot-runtime-common",
"polkadot-runtime-parachains",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
"staging-xcm-builder",
"staging-xcm-executor",
@@ -4054,7 +4218,7 @@ dependencies = [
[[package]]
name = "cumulus-relay-chain-inprocess-interface"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"async-trait",
"cumulus-primitives-core",
@@ -4082,7 +4246,7 @@ dependencies = [
[[package]]
name = "cumulus-relay-chain-interface"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"async-trait",
"cumulus-primitives-core",
@@ -4099,7 +4263,7 @@ dependencies = [
[[package]]
name = "cumulus-relay-chain-minimal-node"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"array-bytes 6.1.0",
"async-trait",
@@ -4120,6 +4284,7 @@ dependencies = [
"polkadot-node-subsystem-util",
"polkadot-overseer",
"polkadot-primitives",
+ "polkadot-service",
"sc-authority-discovery",
"sc-client-api",
"sc-network",
@@ -4139,7 +4304,7 @@ dependencies = [
[[package]]
name = "cumulus-relay-chain-rpc-interface"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"async-trait",
"cumulus-primitives-core",
@@ -4151,7 +4316,7 @@ dependencies = [
"parity-scale-codec",
"pin-project",
"polkadot-overseer",
- "rand",
+ "rand 0.8.5",
"sc-client-api",
"sc-rpc-api",
"sc-service",
@@ -4166,7 +4331,7 @@ dependencies = [
"sp-core",
"sp-runtime",
"sp-state-machine",
- "sp-storage 13.0.0",
+ "sp-storage 19.0.0",
"sp-version",
"thiserror",
"tokio",
@@ -4182,6 +4347,7 @@ dependencies = [
"cumulus-primitives-core",
"cumulus-primitives-parachain-inherent",
"cumulus-primitives-proof-size-hostfunction",
+ "cumulus-primitives-storage-weight-reclaim",
"cumulus-test-relay-sproof-builder",
"cumulus-test-runtime",
"cumulus-test-service",
@@ -4193,15 +4359,19 @@ dependencies = [
"polkadot-primitives",
"sc-block-builder",
"sc-consensus",
+ "sc-consensus-aura",
"sc-executor",
"sc-executor-common",
"sc-service",
"sp-api",
+ "sp-application-crypto",
"sp-blockchain",
+ "sp-consensus-aura",
"sp-core",
"sp-inherents",
"sp-io",
"sp-keyring",
+ "sp-keystore",
"sp-runtime",
"sp-timestamp",
"substrate-test-client",
@@ -4209,14 +4379,14 @@ dependencies = [
[[package]]
name = "cumulus-test-relay-sproof-builder"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"cumulus-primitives-core",
"parity-scale-codec",
"polkadot-primitives",
"sp-runtime",
"sp-state-machine",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-trie",
]
@@ -4224,15 +4394,22 @@ dependencies = [
name = "cumulus-test-runtime"
version = "0.1.0"
dependencies = [
+ "cumulus-pallet-aura-ext",
"cumulus-pallet-parachain-system",
+ "cumulus-primitives-aura",
"cumulus-primitives-core",
+ "cumulus-primitives-storage-weight-reclaim",
"frame-executive",
"frame-support",
"frame-system",
"frame-system-rpc-runtime-api",
+ "pallet-aura",
+ "pallet-authorship",
"pallet-balances",
+ "pallet-collator-selection",
"pallet-glutton",
"pallet-message-queue",
+ "pallet-session",
"pallet-sudo",
"pallet-timestamp",
"pallet-transaction-payment",
@@ -4240,6 +4417,7 @@ dependencies = [
"scale-info",
"sp-api",
"sp-block-builder",
+ "sp-consensus-aura",
"sp-core",
"sp-genesis-builder",
"sp-inherents",
@@ -4247,7 +4425,7 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-transaction-pool",
"sp-version",
"substrate-wasm-builder",
@@ -4258,16 +4436,20 @@ name = "cumulus-test-service"
version = "0.1.0"
dependencies = [
"async-trait",
- "clap 4.4.18",
+ "clap 4.5.3",
"criterion 0.5.1",
"cumulus-client-cli",
+ "cumulus-client-collator",
+ "cumulus-client-consensus-aura",
"cumulus-client-consensus-common",
+ "cumulus-client-consensus-proposer",
"cumulus-client-consensus-relay-chain",
"cumulus-client-parachain-inherent",
"cumulus-client-pov-recovery",
"cumulus-client-service",
"cumulus-pallet-parachain-system",
"cumulus-primitives-core",
+ "cumulus-primitives-storage-weight-reclaim",
"cumulus-relay-chain-inprocess-interface",
"cumulus-relay-chain-interface",
"cumulus-relay-chain-minimal-node",
@@ -4278,7 +4460,6 @@ dependencies = [
"frame-system-rpc-runtime-api",
"futures",
"jsonrpsee",
- "pallet-im-online",
"pallet-timestamp",
"pallet-transaction-payment",
"parachains-common",
@@ -4290,7 +4471,7 @@ dependencies = [
"polkadot-service",
"polkadot-test-service",
"portpicker",
- "rand",
+ "rand 0.8.5",
"rococo-parachain-runtime",
"sc-basic-authorship",
"sc-block-builder",
@@ -4298,6 +4479,7 @@ dependencies = [
"sc-cli",
"sc-client-api",
"sc-consensus",
+ "sc-consensus-aura",
"sc-executor",
"sc-executor-common",
"sc-executor-wasmtime",
@@ -4314,6 +4496,7 @@ dependencies = [
"sp-authority-discovery",
"sp-blockchain",
"sp-consensus",
+ "sp-consensus-aura",
"sp-consensus-grandpa",
"sp-core",
"sp-io",
@@ -4321,7 +4504,7 @@ dependencies = [
"sp-runtime",
"sp-state-machine",
"sp-timestamp",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"substrate-test-client",
"substrate-test-utils",
"tempfile",
@@ -4331,16 +4514,34 @@ dependencies = [
]
[[package]]
-name = "curve25519-dalek"
-version = "2.1.3"
+name = "curl"
+version = "0.4.46"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a9b85542f99a2dfa2a1b8e192662741c9859a846b296bef1c92ef9b58b5a216"
+checksum = "1e2161dd6eba090ff1594084e95fd67aeccf04382ffea77999ea94ed42ec67b6"
dependencies = [
- "byteorder",
- "digest 0.8.1",
- "rand_core 0.5.1",
- "subtle 2.4.1",
- "zeroize",
+ "curl-sys",
+ "libc",
+ "openssl-probe",
+ "openssl-sys",
+ "schannel",
+ "socket2 0.5.6",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "curl-sys"
+version = "0.4.72+curl-8.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "29cbdc8314c447d11e8fd156dcdd031d9e02a7a976163e396b548c03153bc9ea"
+dependencies = [
+ "cc",
+ "libc",
+ "libnghttp2-sys",
+ "libz-sys",
+ "openssl-sys",
+ "pkg-config",
+ "vcpkg",
+ "windows-sys 0.52.0",
]
[[package]]
@@ -4352,15 +4553,15 @@ dependencies = [
"byteorder",
"digest 0.9.0",
"rand_core 0.5.1",
- "subtle 2.4.1",
+ "subtle 2.5.0",
"zeroize",
]
[[package]]
name = "curve25519-dalek"
-version = "4.1.1"
+version = "4.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e89b8c6a2e4b1f45971ad09761aafb85514a84744b67a95e32c3cc1352d1f65c"
+checksum = "0a677b8922c94e01bdbb12126b0bc852f00447528dee1782229af9c720c3f348"
dependencies = [
"cfg-if",
"cpufeatures",
@@ -4369,7 +4570,7 @@ dependencies = [
"fiat-crypto",
"platforms",
"rustc_version 0.4.0",
- "subtle 2.4.1",
+ "subtle 2.5.0",
"zeroize",
]
@@ -4379,9 +4580,9 @@ version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "83fdaf97f4804dcebfa5862639bc9ce4121e82140bec2a987ac5140294865b5b"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -4418,10 +4619,10 @@ dependencies = [
"cc",
"codespan-reporting",
"once_cell",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"scratch",
- "syn 2.0.48",
+ "syn 2.0.53",
]
[[package]]
@@ -4436,9 +4637,9 @@ version = "1.0.106"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "50c49547d73ba8dcfd4ad7325d64c6d5391ff4224d498fc39a6f3f49825a530d"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -4525,8 +4726,8 @@ version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -4536,11 +4737,22 @@ version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e79116f119dd1dba1abf1f3405f03b9b0e79a27a3883864bfebded8a3dc768cd"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
+[[package]]
+name = "derive-syn-parse"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d65d7ce8132b7c0e54497a4d9a55a1c2a0912a0d786cf894472ba818fba45762"
+dependencies = [
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
+]
+
[[package]]
name = "derive_more"
version = "0.99.17"
@@ -4548,8 +4760,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
dependencies = [
"convert_case",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"rustc_version 0.4.0",
"syn 1.0.109",
]
@@ -4593,7 +4805,7 @@ dependencies = [
"block-buffer 0.10.4",
"const-oid",
"crypto-common",
- "subtle 2.4.1",
+ "subtle 2.5.0",
]
[[package]]
@@ -4644,9 +4856,9 @@ version = "0.2.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -4688,28 +4900,28 @@ checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10"
[[package]]
name = "docify"
-version = "0.2.6"
+version = "0.2.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4235e9b248e2ba4b92007fe9c646f3adf0ffde16dc74713eacc92b8bc58d8d2f"
+checksum = "43a2f138ad521dc4a2ced1a4576148a6a610b4c5923933b062a263130a6802ce"
dependencies = [
"docify_macros",
]
[[package]]
name = "docify_macros"
-version = "0.2.6"
+version = "0.2.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "47020e12d7c7505670d1363dd53d6c23724f71a90a3ae32ff8eba40de8404626"
+checksum = "1a081e51fb188742f5a7a1164ad752121abcb22874b21e2c3b0dd040c515fdad"
dependencies = [
"common-path",
- "derive-syn-parse",
+ "derive-syn-parse 0.2.0",
"once_cell",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"regex",
- "syn 2.0.48",
+ "syn 2.0.53",
"termcolor",
- "toml 0.7.8",
+ "toml 0.8.8",
"walkdir",
]
@@ -4753,8 +4965,8 @@ version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "558e40ea573c374cf53507fd240b7ee2f5477df7cfebdb97323ec61c719399c5"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -4774,10 +4986,20 @@ dependencies = [
"digest 0.10.7",
"elliptic-curve",
"rfc6979",
- "signature",
+ "serdect",
+ "signature 2.1.0",
"spki",
]
+[[package]]
+name = "ed25519"
+version = "1.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "91cff35c70bba8a626e3185d8cd48cc11b5437e1a5bcd15b9b5fa3c64b6dfee7"
+dependencies = [
+ "signature 1.6.4",
+]
+
[[package]]
name = "ed25519"
version = "2.2.2"
@@ -4785,7 +5007,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "60f6d271ca33075c88028be6f04d502853d63a5ece419d269c15315d4fc1cf1d"
dependencies = [
"pkcs8",
- "signature",
+ "signature 2.1.0",
+]
+
+[[package]]
+name = "ed25519-dalek"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d"
+dependencies = [
+ "curve25519-dalek 3.2.0",
+ "ed25519 1.5.3",
+ "rand 0.7.3",
+ "serde",
+ "sha2 0.9.9",
+ "zeroize",
]
[[package]]
@@ -4794,12 +5030,12 @@ version = "2.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1f628eaec48bfd21b865dc2950cfa014450c01d2fa2b69a86c2fd5844ec523c0"
dependencies = [
- "curve25519-dalek 4.1.1",
- "ed25519",
+ "curve25519-dalek 4.1.2",
+ "ed25519 2.2.2",
"rand_core 0.6.4",
"serde",
"sha2 0.10.7",
- "subtle 2.4.1",
+ "subtle 2.5.0",
"zeroize",
]
@@ -4823,8 +5059,8 @@ version = "4.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7d9ce6874da5d4415896cd45ffbc4d1cfc0c4f9c079427bd870742c30f2f65a9"
dependencies = [
- "curve25519-dalek 4.1.1",
- "ed25519",
+ "curve25519-dalek 4.1.2",
+ "ed25519 2.2.2",
"hashbrown 0.14.3",
"hex",
"rand_core 0.6.4",
@@ -4840,9 +5076,9 @@ checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
[[package]]
name = "elliptic-curve"
-version = "0.13.5"
+version = "0.13.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "968405c8fdc9b3bf4df0a6638858cc0b52462836ab6b1c87377785dd09cf1c0b"
+checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47"
dependencies = [
"base16ct",
"crypto-bigint",
@@ -4853,13 +5089,14 @@ dependencies = [
"pkcs8",
"rand_core 0.6.4",
"sec1",
- "subtle 2.4.1",
+ "serdect",
+ "subtle 2.5.0",
"zeroize",
]
[[package]]
name = "emulated-integration-tests-common"
-version = "1.0.0"
+version = "3.0.0"
dependencies = [
"asset-test-utils",
"bp-messages",
@@ -4876,12 +5113,13 @@ dependencies = [
"parachains-common",
"parity-scale-codec",
"paste",
+ "polkadot-parachain-primitives",
"polkadot-primitives",
"polkadot-runtime-parachains",
- "polkadot-service",
"sc-consensus-grandpa",
"sp-authority-discovery",
"sp-consensus-babe",
+ "sp-consensus-beefy",
"sp-core",
"sp-runtime",
"staging-xcm",
@@ -4909,12 +5147,24 @@ version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c9720bba047d567ffc8a3cba48bf19126600e249ab7f128e9233e6376976a116"
dependencies = [
- "heck",
- "proc-macro2",
- "quote",
+ "heck 0.4.1",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
+[[package]]
+name = "enum-as-inner"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5ffccbb6966c05b32ef8fbac435df276c4ae4d3dc55a8cd0eb9745e6c12f546a"
+dependencies = [
+ "heck 0.4.1",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
+]
+
[[package]]
name = "enumflags2"
version = "0.7.7"
@@ -4930,9 +5180,9 @@ version = "0.7.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5e9a1f9f7d83e59740248a6e14ecf93929ade55027844dfcea78beafccc15745"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -4941,16 +5191,16 @@ version = "0.1.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c2ad8cef1d801a4686bfd8919f0b30eac4c8e48968c437a6405ded4fb5272d2b"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
-name = "env_logger"
-version = "0.8.4"
+name = "env_filter"
+version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a19187fea3ac7e84da7dacf48de0c45d63c6a76f9490dae389aead16c243fce3"
+checksum = "a009aa4810eb158359dda09d0c87378e4bbb89b5a801f016885a4707ba24f7ea"
dependencies = [
"log",
"regex",
@@ -4958,15 +5208,12 @@ dependencies = [
[[package]]
name = "env_logger"
-version = "0.9.3"
+version = "0.8.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a12e6657c4c97ebab115a42dcee77225f7f482cdd841cf7088c657a42e9e00e7"
+checksum = "a19187fea3ac7e84da7dacf48de0c45d63c6a76f9490dae389aead16c243fce3"
dependencies = [
- "atty",
- "humantime",
"log",
"regex",
- "termcolor",
]
[[package]]
@@ -4982,6 +5229,19 @@ dependencies = [
"termcolor",
]
+[[package]]
+name = "env_logger"
+version = "0.11.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "38b35839ba51819680ba087cd351788c9a3c476841207e0b8cee0b04722343b9"
+dependencies = [
+ "anstream",
+ "anstyle",
+ "env_filter",
+ "humantime",
+ "log",
+]
+
[[package]]
name = "environmental"
version = "1.1.4"
@@ -4994,11 +5254,26 @@ version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
+[[package]]
+name = "equivocation-detector"
+version = "0.1.0"
+dependencies = [
+ "async-std",
+ "async-trait",
+ "bp-header-chain",
+ "finality-relay",
+ "frame-support",
+ "futures",
+ "log",
+ "num-traits",
+ "relay-utils",
+]
+
[[package]]
name = "erased-serde"
-version = "0.3.30"
+version = "0.4.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "837c0466252947ada828b975e12daf82e18bb5444e4df87be6038d4469e2a3d2"
+checksum = "2b73807008a3c7f171cc40312f37d95ef0396e048b5848d775f54b1a4dd4a0d3"
dependencies = [
"serde",
]
@@ -5036,8 +5311,9 @@ dependencies = [
[[package]]
name = "ethabi-decode"
-version = "1.4.0"
-source = "git+https://github.com/snowfork/ethabi-decode.git?branch=master#7d215837b626650bd9a076821e57ad488101301f"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "09d398648d65820a727d6a81e58b962f874473396a047e4c30bafe3240953417"
dependencies = [
"ethereum-types",
"tiny-keccak",
@@ -5080,6 +5356,27 @@ version = "2.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
+[[package]]
+name = "event-listener"
+version = "4.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "67b215c49b2b248c855fb73579eb1f4f26c38ffdc12973e20e07b91d78d5646e"
+dependencies = [
+ "concurrent-queue",
+ "parking",
+ "pin-project-lite 0.2.12",
+]
+
+[[package]]
+name = "event-listener-strategy"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "958e4d70b6d5e81971bebec42271ec641e7ff4e170a6fa605f2b8a8b65cb97d3"
+dependencies = [
+ "event-listener 4.0.3",
+ "pin-project-lite 0.2.12",
+]
+
[[package]]
name = "exit-future"
version = "0.2.0"
@@ -5097,8 +5394,8 @@ checksum = "a718c0675c555c5f976fff4ea9e2c150fa06cefa201cadef87cfbf9324075881"
dependencies = [
"blake3",
"fs-err",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
]
[[package]]
@@ -5109,9 +5406,9 @@ checksum = "5f86a749cf851891866c10515ef6c299b5c69661465e9c3bbe7e07a2b77fb0f7"
dependencies = [
"blake2 0.10.6",
"fs-err",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -5124,12 +5421,6 @@ dependencies = [
"once_cell",
]
-[[package]]
-name = "fake-simd"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed"
-
[[package]]
name = "fallible-iterator"
version = "0.2.0"
@@ -5187,8 +5478,8 @@ dependencies = [
"expander 0.0.4",
"indexmap 1.9.3",
"proc-macro-crate 1.3.1",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
"thiserror",
]
@@ -5226,7 +5517,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449"
dependencies = [
"rand_core 0.6.4",
- "subtle 2.4.1",
+ "subtle 2.5.0",
]
[[package]]
@@ -5239,7 +5530,7 @@ dependencies = [
"ark-poly",
"ark-serialize 0.4.2",
"ark-std 0.4.0",
- "merlin 3.0.0",
+ "merlin",
]
[[package]]
@@ -5283,10 +5574,25 @@ dependencies = [
"num-traits",
"parity-scale-codec",
"parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
"scale-info",
]
+[[package]]
+name = "finality-relay"
+version = "0.1.0"
+dependencies = [
+ "async-std",
+ "async-trait",
+ "backoff",
+ "bp-header-chain",
+ "futures",
+ "log",
+ "num-traits",
+ "parking_lot 0.12.1",
+ "relay-utils",
+]
+
[[package]]
name = "findshlibs"
version = "0.10.2"
@@ -5306,7 +5612,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534"
dependencies = [
"byteorder",
- "rand",
+ "rand 0.8.5",
"rustc-hex",
"static_assertions",
]
@@ -5343,9 +5649,24 @@ version = "1.0.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
+[[package]]
+name = "foreign-types"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+dependencies = [
+ "foreign-types-shared",
+]
+
+[[package]]
+name = "foreign-types-shared"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+
[[package]]
name = "fork-tree"
-version = "3.0.0"
+version = "12.0.0"
dependencies = [
"parity-scale-codec",
]
@@ -5375,39 +5696,9 @@ version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa"
-[[package]]
-name = "frame"
-version = "0.0.1-dev"
-dependencies = [
- "docify",
- "frame-executive",
- "frame-support",
- "frame-system",
- "frame-system-rpc-runtime-api",
- "log",
- "pallet-examples",
- "parity-scale-codec",
- "scale-info",
- "simple-mermaid",
- "sp-api",
- "sp-arithmetic",
- "sp-block-builder",
- "sp-consensus-aura",
- "sp-consensus-grandpa",
- "sp-core",
- "sp-inherents",
- "sp-io",
- "sp-offchain",
- "sp-runtime",
- "sp-session",
- "sp-std 8.0.0",
- "sp-transaction-pool",
- "sp-version",
-]
-
[[package]]
name = "frame-benchmarking"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"array-bytes 6.1.0",
"frame-support",
@@ -5426,20 +5717,20 @@ dependencies = [
"sp-io",
"sp-keystore",
"sp-runtime",
- "sp-runtime-interface 17.0.0",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-runtime-interface 24.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"static_assertions",
]
[[package]]
name = "frame-benchmarking-cli"
-version = "4.0.0-dev"
+version = "32.0.0"
dependencies = [
"Inflector",
"array-bytes 6.1.0",
"chrono",
- "clap 4.4.18",
+ "clap 4.5.3",
"comfy-table",
"frame-benchmarking",
"frame-support",
@@ -5451,9 +5742,10 @@ dependencies = [
"linked-hash-map",
"log",
"parity-scale-codec",
- "rand",
+ "rand 0.8.5",
"rand_pcg",
"sc-block-builder",
+ "sc-chain-spec",
"sc-cli",
"sc-client-api",
"sc-client-db",
@@ -5466,22 +5758,23 @@ dependencies = [
"sp-blockchain",
"sp-core",
"sp-database",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
+ "sp-genesis-builder",
"sp-inherents",
"sp-io",
"sp-keystore",
"sp-runtime",
"sp-state-machine",
- "sp-storage 13.0.0",
+ "sp-storage 19.0.0",
"sp-trie",
- "sp-wasm-interface 14.0.0",
+ "sp-wasm-interface 20.0.0",
"thiserror",
"thousands",
]
[[package]]
name = "frame-benchmarking-pallet-pov"
-version = "4.0.0-dev"
+version = "18.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -5490,54 +5783,54 @@ dependencies = [
"scale-info",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "frame-election-provider-solution-type"
-version = "4.0.0-dev"
+version = "13.0.0"
dependencies = [
"frame-election-provider-support",
"frame-support",
"parity-scale-codec",
"proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"scale-info",
"sp-arithmetic",
- "syn 2.0.48",
+ "syn 2.0.53",
"trybuild",
]
[[package]]
name = "frame-election-provider-support"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-election-provider-solution-type",
"frame-support",
"frame-system",
"parity-scale-codec",
- "rand",
+ "rand 0.8.5",
"scale-info",
"sp-arithmetic",
"sp-core",
"sp-io",
"sp-npos-elections",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "frame-election-solution-type-fuzzer"
version = "2.0.0-alpha.5"
dependencies = [
- "clap 4.4.18",
+ "clap 4.5.3",
"frame-election-provider-solution-type",
"frame-election-provider-support",
"frame-support",
"honggfuzz",
"parity-scale-codec",
- "rand",
+ "rand 0.8.5",
"scale-info",
"sp-arithmetic",
"sp-npos-elections",
@@ -5546,8 +5839,9 @@ dependencies = [
[[package]]
name = "frame-executive"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
+ "aquamarine 0.3.3",
"array-bytes 6.1.0",
"frame-support",
"frame-system",
@@ -5561,8 +5855,8 @@ dependencies = [
"sp-inherents",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"sp-version",
]
@@ -5578,9 +5872,23 @@ dependencies = [
"serde",
]
+[[package]]
+name = "frame-omni-bencher"
+version = "0.1.0"
+dependencies = [
+ "clap 4.5.3",
+ "cumulus-primitives-proof-size-hostfunction",
+ "env_logger 0.11.3",
+ "frame-benchmarking-cli",
+ "log",
+ "sc-cli",
+ "sp-runtime",
+ "sp-statement-store",
+]
+
[[package]]
name = "frame-remote-externalities"
-version = "0.10.0-dev"
+version = "0.35.0"
dependencies = [
"futures",
"indicatif",
@@ -5593,7 +5901,7 @@ dependencies = [
"sp-io",
"sp-runtime",
"sp-state-machine",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"spinners",
"substrate-rpc-client",
"tokio",
@@ -5602,9 +5910,9 @@ dependencies = [
[[package]]
name = "frame-support"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
- "aquamarine",
+ "aquamarine 0.5.0",
"array-bytes 6.1.0",
"assert_matches",
"bitflags 1.3.2",
@@ -5629,7 +5937,7 @@ dependencies = [
"sp-core",
"sp-crypto-hashing",
"sp-crypto-hashing-proc-macro",
- "sp-debug-derive 8.0.0",
+ "sp-debug-derive 14.0.0",
"sp-genesis-builder",
"sp-inherents",
"sp-io",
@@ -5637,8 +5945,9 @@ dependencies = [
"sp-runtime",
"sp-staking",
"sp-state-machine",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-timestamp",
+ "sp-tracing 16.0.0",
"sp-weights",
"static_assertions",
"tt-call",
@@ -5646,41 +5955,41 @@ dependencies = [
[[package]]
name = "frame-support-procedural"
-version = "4.0.0-dev"
+version = "23.0.0"
dependencies = [
"Inflector",
"cfg-expr",
- "derive-syn-parse",
+ "derive-syn-parse 0.2.0",
"expander 2.0.0",
"frame-support-procedural-tools",
"itertools 0.10.5",
"macro_magic",
"proc-macro-warning",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"regex",
"sp-crypto-hashing",
- "syn 2.0.48",
+ "syn 2.0.53",
]
[[package]]
name = "frame-support-procedural-tools"
-version = "4.0.0-dev"
+version = "10.0.0"
dependencies = [
"frame-support-procedural-tools-derive",
"proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
name = "frame-support-procedural-tools-derive"
-version = "3.0.0"
+version = "11.0.0"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -5705,7 +6014,7 @@ dependencies = [
"sp-metadata-ir",
"sp-runtime",
"sp-state-machine",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-version",
"static_assertions",
"trybuild",
@@ -5740,14 +6049,14 @@ dependencies = [
name = "frame-support-test-stg-frame-crate"
version = "0.1.0"
dependencies = [
- "frame",
"parity-scale-codec",
+ "polkadot-sdk-frame",
"scale-info",
]
[[package]]
name = "frame-system"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"cfg-if",
"criterion 0.4.0",
@@ -5758,10 +6067,10 @@ dependencies = [
"scale-info",
"serde",
"sp-core",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-version",
"sp-weights",
"substrate-test-runtime-client",
@@ -5769,7 +6078,7 @@ dependencies = [
[[package]]
name = "frame-system-benchmarking"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -5777,16 +6086,16 @@ dependencies = [
"parity-scale-codec",
"scale-info",
"sp-core",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-version",
]
[[package]]
name = "frame-system-rpc-runtime-api"
-version = "4.0.0-dev"
+version = "26.0.0"
dependencies = [
"parity-scale-codec",
"sp-api",
@@ -5794,13 +6103,13 @@ dependencies = [
[[package]]
name = "frame-try-runtime"
-version = "0.10.0-dev"
+version = "0.34.0"
dependencies = [
"frame-support",
"parity-scale-codec",
"sp-api",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
@@ -5843,9 +6152,9 @@ checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c"
[[package]]
name = "futures"
-version = "0.3.28"
+version = "0.3.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40"
+checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0"
dependencies = [
"futures-channel",
"futures-core",
@@ -5874,9 +6183,9 @@ checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
[[package]]
name = "futures-executor"
-version = "0.3.28"
+version = "0.3.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0"
+checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
dependencies = [
"futures-core",
"futures-task",
@@ -5911,9 +6220,9 @@ version = "0.3.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -5974,7 +6283,7 @@ dependencies = [
[[package]]
name = "generate-bags"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"chrono",
"frame-election-provider-support",
@@ -6043,7 +6352,7 @@ version = "0.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6ea1015b5a70616b688dc230cfe50c8af89d972cb132d5a622814d29773b10b9"
dependencies = [
- "rand",
+ "rand 0.8.5",
"rand_core 0.6.4",
]
@@ -6094,9 +6403,21 @@ version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
+[[package]]
+name = "gloo-timers"
+version = "0.2.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9b995a66bb87bebce9a0f4a95aed01daca4872c050bfcb21653361c03bc35e5c"
+dependencies = [
+ "futures-channel",
+ "futures-core",
+ "js-sys",
+ "wasm-bindgen",
+]
+
[[package]]
name = "glutton-westend-runtime"
-version = "1.0.0"
+version = "3.0.0"
dependencies = [
"cumulus-pallet-aura-ext",
"cumulus-pallet-parachain-system",
@@ -6128,8 +6449,8 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"sp-transaction-pool",
"sp-version",
"staging-parachain-info",
@@ -6137,6 +6458,25 @@ dependencies = [
"staging-xcm-builder",
"staging-xcm-executor",
"substrate-wasm-builder",
+ "testnet-parachains-constants",
+]
+
+[[package]]
+name = "governor"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "821239e5672ff23e2a7060901fa622950bbd80b649cdaadd78d1c1767ed14eb4"
+dependencies = [
+ "cfg-if",
+ "dashmap",
+ "futures",
+ "futures-timer",
+ "no-std-compat",
+ "nonzero_ext",
+ "parking_lot 0.12.1",
+ "quanta",
+ "rand 0.8.5",
+ "smallvec",
]
[[package]]
@@ -6147,14 +6487,14 @@ checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63"
dependencies = [
"ff",
"rand_core 0.6.4",
- "subtle 2.4.1",
+ "subtle 2.5.0",
]
[[package]]
name = "h2"
-version = "0.3.24"
+version = "0.3.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9"
+checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8"
dependencies = [
"bytes",
"fnv",
@@ -6162,7 +6502,7 @@ dependencies = [
"futures-sink",
"futures-util",
"http",
- "indexmap 2.0.0",
+ "indexmap 2.2.3",
"slab",
"tokio",
"tokio-util",
@@ -6177,9 +6517,9 @@ checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7"
[[package]]
name = "handlebars"
-version = "4.3.7"
+version = "5.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "83c3372087601b532857d332f5957cbae686da52bb7810bf038c3e3c3cc2fa0d"
+checksum = "ab283476b99e66691dee3f1640fea91487a8d81f50fb5ecc75538f8f8879a1e4"
dependencies = [
"log",
"pest",
@@ -6210,7 +6550,7 @@ version = "0.12.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
dependencies = [
- "ahash 0.7.6",
+ "ahash 0.7.8",
]
[[package]]
@@ -6219,7 +6559,7 @@ version = "0.13.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e"
dependencies = [
- "ahash 0.8.7",
+ "ahash 0.8.8",
]
[[package]]
@@ -6228,7 +6568,7 @@ version = "0.14.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
dependencies = [
- "ahash 0.8.7",
+ "ahash 0.8.8",
"allocator-api2",
"serde",
]
@@ -6242,12 +6582,27 @@ dependencies = [
"hashbrown 0.14.3",
]
+[[package]]
+name = "heck"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
+dependencies = [
+ "unicode-segmentation",
+]
+
[[package]]
name = "heck"
version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
+[[package]]
+name = "heck"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
+
[[package]]
name = "hermit-abi"
version = "0.1.19"
@@ -6269,6 +6624,12 @@ version = "0.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
+[[package]]
+name = "hex-conservative"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "30ed443af458ccb6d81c1e7e661545f94d3176752fb1df2f543b902a1e0f51e2"
+
[[package]]
name = "hex-literal"
version = "0.4.1"
@@ -6294,16 +6655,6 @@ dependencies = [
"digest 0.9.0",
]
-[[package]]
-name = "hmac"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a2a2320eb7ec0ebe8da8f744d7812d9fc4cb4d09344ac01898dbcb6a20ae69b"
-dependencies = [
- "crypto-mac 0.11.1",
- "digest 0.9.0",
-]
-
[[package]]
name = "hmac"
version = "0.12.1"
@@ -6428,9 +6779,9 @@ dependencies = [
"hyper",
"log",
"rustls 0.21.6",
- "rustls-native-certs",
+ "rustls-native-certs 0.6.3",
"tokio",
- "tokio-rustls",
+ "tokio-rustls 0.24.1",
]
[[package]]
@@ -6550,8 +6901,8 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -6570,8 +6921,8 @@ version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b139284b5cf57ecfa712bcc66950bb635b31aff41c188e8a4cfc758eca374a3f"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
]
[[package]]
@@ -6593,9 +6944,9 @@ dependencies = [
[[package]]
name = "indexmap"
-version = "2.0.0"
+version = "2.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d"
+checksum = "233cf39063f058ea2caae4091bf4a3ef70a653afbc026f5c4a4135d114e3c177"
dependencies = [
"equivalent",
"hashbrown 0.14.3",
@@ -6609,9 +6960,9 @@ checksum = "8e04e2fd2b8188ea827b32ef11de88377086d690286ab35747ef7f9bf3ccb590"
[[package]]
name = "indicatif"
-version = "0.17.6"
+version = "0.17.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b297dc40733f23a0e52728a58fa9489a5b7638a324932de16b41adc3ef80730"
+checksum = "fb28741c9db9a713d93deb3bb9515c20788cef5815265bee4980e87bde7e0f25"
dependencies = [
"console",
"instant",
@@ -6676,7 +7027,7 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f"
dependencies = [
- "socket2 0.5.3",
+ "socket2 0.5.6",
"widestring",
"windows-sys 0.48.0",
"winreg",
@@ -6708,6 +7059,33 @@ dependencies = [
"winapi",
]
+[[package]]
+name = "isahc"
+version = "1.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "334e04b4d781f436dc315cb1e7515bd96826426345d498149e4bde36b67f8ee9"
+dependencies = [
+ "async-channel",
+ "castaway",
+ "crossbeam-utils",
+ "curl",
+ "curl-sys",
+ "encoding_rs",
+ "event-listener 2.5.3",
+ "futures-lite",
+ "http",
+ "log",
+ "mime",
+ "once_cell",
+ "polling",
+ "slab",
+ "sluice",
+ "tracing",
+ "tracing-futures",
+ "url",
+ "waker-fn",
+]
+
[[package]]
name = "itertools"
version = "0.10.5"
@@ -6757,21 +7135,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "078e285eafdfb6c4b434e0d31e8cfcb5115b651496faca5749b88fafd4f23bfd"
[[package]]
-name = "json-patch"
-version = "1.0.0"
+name = "jsonpath_lib"
+version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f54898088ccb91df1b492cc80029a6fdf1c48ca0db7c6822a8babad69c94658"
+checksum = "eaa63191d68230cccb81c5aa23abd53ed64d83337cacbb25a7b8c7979523774f"
dependencies = [
+ "log",
"serde",
"serde_json",
- "thiserror",
]
[[package]]
name = "jsonrpsee"
-version = "0.20.3"
+version = "0.22.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "affdc52f7596ccb2d7645231fc6163bb314630c989b64998f3699a28b4d5d4dc"
+checksum = "87f3ae45a64cfc0882934f963be9431b2a165d667f53140358181f262aca0702"
dependencies = [
"jsonrpsee-core",
"jsonrpsee-http-client",
@@ -6785,19 +7163,20 @@ dependencies = [
[[package]]
name = "jsonrpsee-client-transport"
-version = "0.20.3"
+version = "0.22.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5b005c793122d03217da09af68ba9383363caa950b90d3436106df8cabce935"
+checksum = "455fc882e56f58228df2aee36b88a1340eafd707c76af2fa68cf94b37d461131"
dependencies = [
"futures-util",
"http",
"jsonrpsee-core",
"pin-project",
- "rustls-native-certs",
+ "rustls-native-certs 0.7.0",
+ "rustls-pki-types",
"soketto",
"thiserror",
"tokio",
- "tokio-rustls",
+ "tokio-rustls 0.25.0",
"tokio-util",
"tracing",
"url",
@@ -6805,12 +7184,12 @@ dependencies = [
[[package]]
name = "jsonrpsee-core"
-version = "0.20.3"
+version = "0.22.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da2327ba8df2fdbd5e897e2b5ed25ce7f299d345b9736b6828814c3dbd1fd47b"
+checksum = "b75568f4f9696e3a47426e1985b548e1a9fcb13372a5e320372acaf04aca30d1"
dependencies = [
"anyhow",
- "async-lock",
+ "async-lock 3.3.0",
"async-trait",
"beef",
"futures-timer",
@@ -6818,21 +7197,22 @@ dependencies = [
"hyper",
"jsonrpsee-types",
"parking_lot 0.12.1",
- "rand",
+ "pin-project",
+ "rand 0.8.5",
"rustc-hash",
"serde",
"serde_json",
- "soketto",
"thiserror",
"tokio",
+ "tokio-stream",
"tracing",
]
[[package]]
name = "jsonrpsee-http-client"
-version = "0.20.3"
+version = "0.22.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f80c17f62c7653ce767e3d7288b793dfec920f97067ceb189ebdd3570f2bc20"
+checksum = "9e7a95e346f55df84fb167b7e06470e196e7d5b9488a21d69c5d9732043ba7ba"
dependencies = [
"async-trait",
"hyper",
@@ -6850,28 +7230,29 @@ dependencies = [
[[package]]
name = "jsonrpsee-proc-macros"
-version = "0.20.3"
+version = "0.22.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "29110019693a4fa2dbda04876499d098fa16d70eba06b1e6e2b3f1b251419515"
+checksum = "30ca066e73dd70294aebc5c2675d8ffae43be944af027c857ce0d4c51785f014"
dependencies = [
- "heck",
- "proc-macro-crate 1.3.1",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
+ "heck 0.4.1",
+ "proc-macro-crate 3.0.0",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
name = "jsonrpsee-server"
-version = "0.20.3"
+version = "0.22.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82c39a00449c9ef3f50b84fc00fc4acba20ef8f559f07902244abf4c15c5ab9c"
+checksum = "0e29c1bd1f9bba83c864977c73404e505f74f730fa0db89dd490ec174e36d7f0"
dependencies = [
"futures-util",
"http",
"hyper",
"jsonrpsee-core",
"jsonrpsee-types",
+ "pin-project",
"route-recognizer",
"serde",
"serde_json",
@@ -6886,23 +7267,22 @@ dependencies = [
[[package]]
name = "jsonrpsee-types"
-version = "0.20.3"
+version = "0.22.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5be0be325642e850ed0bdff426674d2e66b2b7117c9be23a7caef68a2902b7d9"
+checksum = "3467fd35feeee179f71ab294516bdf3a81139e7aeebdd860e46897c12e1a3368"
dependencies = [
"anyhow",
"beef",
"serde",
"serde_json",
"thiserror",
- "tracing",
]
[[package]]
name = "jsonrpsee-ws-client"
-version = "0.20.3"
+version = "0.22.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bca9cb3933ccae417eb6b08c3448eb1cb46e39834e5b503e395e5e5bd08546c0"
+checksum = "68ca71e74983f624c0cb67828e480a981586074da8ad3a2f214c6a3f884edab9"
dependencies = [
"http",
"jsonrpsee-client-transport",
@@ -6913,14 +7293,15 @@ dependencies = [
[[package]]
name = "k256"
-version = "0.13.1"
+version = "0.13.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cadb76004ed8e97623117f3df85b17aaa6626ab0b0831e6573f104df16cd1bcc"
+checksum = "956ff9b67e26e1a6a866cb758f12c6f8746208489e3e4a4b5580802f2f0a587b"
dependencies = [
"cfg-if",
"ecdsa",
"elliptic-curve",
"once_cell",
+ "serdect",
"sha2 0.10.7",
]
@@ -6989,6 +7370,7 @@ dependencies = [
"pallet-election-provider-multi-phase",
"pallet-election-provider-support-benchmarking",
"pallet-elections-phragmen",
+ "pallet-example-mbm",
"pallet-example-tasks",
"pallet-fast-unstake",
"pallet-glutton",
@@ -7000,6 +7382,7 @@ dependencies = [
"pallet-lottery",
"pallet-membership",
"pallet-message-queue",
+ "pallet-migrations",
"pallet-mixnet",
"pallet-mmr",
"pallet-multisig",
@@ -7012,6 +7395,7 @@ dependencies = [
"pallet-nomination-pools-runtime-api",
"pallet-offences",
"pallet-offences-benchmarking",
+ "pallet-parameters",
"pallet-preimage",
"pallet-proxy",
"pallet-ranked-collective",
@@ -7063,8 +7447,8 @@ dependencies = [
"sp-session",
"sp-staking",
"sp-statement-store",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"sp-transaction-pool",
"sp-version",
"static_assertions",
@@ -7072,8 +7456,17 @@ dependencies = [
]
[[package]]
-name = "kvdb"
-version = "0.13.0"
+name = "kv-log-macro"
+version = "1.0.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0de8b303297635ad57c9f5059fd9cee7a47f8e8daa09df0fcd07dd39fb22977f"
+dependencies = [
+ "log",
+]
+
+[[package]]
+name = "kvdb"
+version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e7d770dcb02bf6835887c3a979b5107a04ff4bbde97a5f0928d27404a155add9"
dependencies = [
@@ -7195,6 +7588,16 @@ version = "0.2.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f7012b1bbb0719e1097c47611d3898568c546d597c2e74d66f6087edd5233ff4"
+[[package]]
+name = "libnghttp2-sys"
+version = "0.1.9+1.58.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b57e858af2798e167e709b9d969325b6d8e9d50232fcbc494d7d54f976854a64"
+dependencies = [
+ "cc",
+ "libc",
+]
+
[[package]]
name = "libp2p"
version = "0.51.4"
@@ -7272,7 +7675,7 @@ dependencies = [
"parking_lot 0.12.1",
"pin-project",
"quick-protobuf",
- "rand",
+ "rand 0.8.5",
"rw-stream-sink",
"smallvec",
"thiserror",
@@ -7291,7 +7694,7 @@ dependencies = [
"log",
"parking_lot 0.12.1",
"smallvec",
- "trust-dns-resolver",
+ "trust-dns-resolver 0.22.0",
]
[[package]]
@@ -7323,12 +7726,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "276bb57e7af15d8f100d3c11cbdd32c6752b7eef4ba7a18ecf464972c07abcce"
dependencies = [
"bs58 0.4.0",
- "ed25519-dalek",
+ "ed25519-dalek 2.1.0",
"log",
"multiaddr",
"multihash 0.17.0",
"quick-protobuf",
- "rand",
+ "rand 0.8.5",
"sha2 0.10.7",
"thiserror",
"zeroize",
@@ -7353,7 +7756,7 @@ dependencies = [
"libp2p-swarm",
"log",
"quick-protobuf",
- "rand",
+ "rand 0.8.5",
"sha2 0.10.7",
"smallvec",
"thiserror",
@@ -7375,11 +7778,11 @@ dependencies = [
"libp2p-identity",
"libp2p-swarm",
"log",
- "rand",
+ "rand 0.8.5",
"smallvec",
"socket2 0.4.9",
"tokio",
- "trust-dns-proto",
+ "trust-dns-proto 0.22.0",
"void",
]
@@ -7411,7 +7814,7 @@ dependencies = [
"log",
"once_cell",
"quick-protobuf",
- "rand",
+ "rand 0.8.5",
"sha2 0.10.7",
"snow",
"static_assertions",
@@ -7433,7 +7836,7 @@ dependencies = [
"libp2p-core",
"libp2p-swarm",
"log",
- "rand",
+ "rand 0.8.5",
"void",
]
@@ -7453,7 +7856,7 @@ dependencies = [
"log",
"parking_lot 0.12.1",
"quinn-proto",
- "rand",
+ "rand 0.8.5",
"rustls 0.20.8",
"thiserror",
"tokio",
@@ -7471,7 +7874,7 @@ dependencies = [
"libp2p-core",
"libp2p-identity",
"libp2p-swarm",
- "rand",
+ "rand 0.8.5",
"smallvec",
]
@@ -7490,7 +7893,7 @@ dependencies = [
"libp2p-identity",
"libp2p-swarm-derive",
"log",
- "rand",
+ "rand 0.8.5",
"smallvec",
"tokio",
"void",
@@ -7502,8 +7905,8 @@ version = "0.32.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0fba456131824ab6acd4c7bf61e9c0f0a3014b5fc9868ccb8e10d344594cdc4f"
dependencies = [
- "heck",
- "quote",
+ "heck 0.4.1",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -7538,7 +7941,7 @@ dependencies = [
"rustls 0.20.8",
"thiserror",
"webpki",
- "x509-parser",
+ "x509-parser 0.14.0",
"yasna",
]
@@ -7616,7 +8019,7 @@ dependencies = [
"libsecp256k1-core",
"libsecp256k1-gen-ecmult",
"libsecp256k1-gen-genmult",
- "rand",
+ "rand 0.8.5",
"serde",
"sha2 0.9.9",
"typenum",
@@ -7630,7 +8033,7 @@ checksum = "5be9b9bb642d8522a44d533eab56c16c738301965504753b03ad1de3425d5451"
dependencies = [
"crunchy",
"digest 0.9.0",
- "subtle 2.4.1",
+ "subtle 2.5.0",
]
[[package]]
@@ -7658,6 +8061,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d97137b25e321a73eef1418d1d5d2eda4d77e12813f8e6dead84bc52c5870a7b"
dependencies = [
"cc",
+ "libc",
"pkg-config",
"vcpkg",
]
@@ -7743,6 +8147,60 @@ dependencies = [
"paste",
]
+[[package]]
+name = "litep2p"
+version = "0.3.0"
+source = "git+https://github.com/paritytech/litep2p?branch=master#b142c9eb611fb2fe78d2830266a3675b37299ceb"
+dependencies = [
+ "async-trait",
+ "bs58 0.4.0",
+ "bytes",
+ "cid 0.10.1",
+ "ed25519-dalek 1.0.1",
+ "futures",
+ "futures-timer",
+ "hex-literal",
+ "indexmap 2.2.3",
+ "libc",
+ "mockall",
+ "multiaddr",
+ "multihash 0.17.0",
+ "network-interface",
+ "nohash-hasher",
+ "parking_lot 0.12.1",
+ "pin-project",
+ "prost 0.11.9",
+ "prost-build",
+ "quinn",
+ "rand 0.8.5",
+ "rcgen",
+ "ring 0.16.20",
+ "rustls 0.20.8",
+ "serde",
+ "sha2 0.10.7",
+ "simple-dns",
+ "smallvec",
+ "snow",
+ "socket2 0.5.6",
+ "static_assertions",
+ "str0m",
+ "thiserror",
+ "tokio",
+ "tokio-stream",
+ "tokio-tungstenite 0.20.1",
+ "tokio-util",
+ "tracing",
+ "trust-dns-resolver 0.23.2",
+ "uint",
+ "unsigned-varint",
+ "url",
+ "webpki",
+ "x25519-dalek 2.0.0",
+ "x509-parser 0.15.1",
+ "yasna",
+ "zeroize",
+]
+
[[package]]
name = "lock_api"
version = "0.4.10"
@@ -7755,9 +8213,9 @@ dependencies = [
[[package]]
name = "log"
-version = "0.4.20"
+version = "0.4.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
dependencies = [
"serde",
"value-bag",
@@ -7825,6 +8283,15 @@ dependencies = [
"libc",
]
+[[package]]
+name = "mach2"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "19b955cdeb2a02b9117f121ce63aa52d08ade45de53e48fe6a38b39c10f6f709"
+dependencies = [
+ "libc",
+]
+
[[package]]
name = "macro_magic"
version = "0.5.0"
@@ -7833,8 +8300,8 @@ checksum = "e03844fc635e92f3a0067e25fa4bf3e3dbf3f2927bf3aa01bb7bc8f1c428949d"
dependencies = [
"macro_magic_core",
"macro_magic_macros",
- "quote",
- "syn 2.0.48",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -7844,11 +8311,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "468155613a44cfd825f1fb0ffa532b018253920d404e6fca1e8d43155198a46d"
dependencies = [
"const-random",
- "derive-syn-parse",
+ "derive-syn-parse 0.1.5",
"macro_magic_core_macros",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -7857,9 +8324,9 @@ version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9ea73aa640dc01d62a590d48c0c3521ed739d53b27f919b25c3551e233481654"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -7869,8 +8336,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ef9d79ae96aaba821963320eb2b6e34d17df1e5a83d8a1985c29cc5be59577b3"
dependencies = [
"macro_magic_core",
- "quote",
- "syn 2.0.48",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -7990,26 +8457,32 @@ dependencies = [
[[package]]
name = "merlin"
-version = "2.0.1"
+version = "3.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4e261cf0f8b3c42ded9f7d2bb59dea03aa52bc8a1cbc7482f9fc3fd1229d3b42"
+checksum = "58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d"
dependencies = [
"byteorder",
"keccak",
- "rand_core 0.5.1",
+ "rand_core 0.6.4",
"zeroize",
]
[[package]]
-name = "merlin"
-version = "3.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d"
+name = "messages-relay"
+version = "0.1.0"
dependencies = [
- "byteorder",
- "keccak",
- "rand_core 0.6.4",
- "zeroize",
+ "async-std",
+ "async-trait",
+ "bp-messages",
+ "env_logger 0.11.3",
+ "finality-relay",
+ "futures",
+ "hex",
+ "log",
+ "num-traits",
+ "parking_lot 0.12.1",
+ "relay-utils",
+ "sp-arithmetic",
]
[[package]]
@@ -8019,24 +8492,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "69672161530e8aeca1d1400fbf3f1a1747ff60ea604265a4e906c2442df20532"
dependencies = [
"futures",
- "rand",
+ "rand 0.8.5",
"thrift",
]
-[[package]]
-name = "milagro_bls"
-version = "1.5.0"
-source = "git+https://github.com/snowfork/milagro_bls?rev=a6d66e4eb89015e352fb1c9f7b661ecdbb5b2176#a6d66e4eb89015e352fb1c9f7b661ecdbb5b2176"
-dependencies = [
- "amcl",
- "hex",
- "lazy_static",
- "parity-scale-codec",
- "rand",
- "scale-info",
- "zeroize",
-]
-
[[package]]
name = "mime"
version = "0.3.17"
@@ -8050,15 +8509,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
[[package]]
-name = "minimal-node"
-version = "4.0.0-dev"
+name = "minimal-template-node"
+version = "0.0.0"
dependencies = [
- "clap 4.4.18",
- "frame",
+ "clap 4.5.3",
"futures",
"futures-timer",
"jsonrpsee",
- "minimal-runtime",
+ "minimal-template-runtime",
+ "polkadot-sdk-frame",
"sc-basic-authorship",
"sc-cli",
"sc-client-api",
@@ -8085,19 +8544,20 @@ dependencies = [
]
[[package]]
-name = "minimal-runtime"
-version = "0.1.0"
+name = "minimal-template-runtime"
+version = "0.0.0"
dependencies = [
- "frame",
- "frame-support",
"pallet-balances",
+ "pallet-minimal-template",
"pallet-sudo",
"pallet-timestamp",
"pallet-transaction-payment",
"pallet-transaction-payment-rpc-runtime-api",
"parity-scale-codec",
+ "polkadot-sdk-frame",
"scale-info",
"sp-genesis-builder",
+ "sp-runtime",
"substrate-wasm-builder",
]
@@ -8112,9 +8572,9 @@ dependencies = [
[[package]]
name = "mio"
-version = "0.8.8"
+version = "0.8.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2"
+checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
dependencies = [
"libc",
"wasi 0.11.0+wasi-snapshot-preview1",
@@ -8132,23 +8592,23 @@ dependencies = [
"bitflags 1.3.2",
"blake2 0.10.6",
"c2-chacha",
- "curve25519-dalek 4.1.1",
+ "curve25519-dalek 4.1.2",
"either",
"hashlink",
"lioness",
"log",
"parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
"rand_chacha 0.3.1",
"rand_distr",
- "subtle 2.4.1",
+ "subtle 2.5.0",
"thiserror",
"zeroize",
]
[[package]]
name = "mmr-gadget"
-version = "4.0.0-dev"
+version = "29.0.0"
dependencies = [
"futures",
"log",
@@ -8164,14 +8624,14 @@ dependencies = [
"sp-core",
"sp-mmr-primitives",
"sp-runtime",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"substrate-test-runtime-client",
"tokio",
]
[[package]]
name = "mmr-rpc"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"jsonrpsee",
"parity-scale-codec",
@@ -8206,8 +8666,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "22ce75669015c4f47b289fd4d4f56e894e4c96003ffdf3ac51313126f94c6cbb"
dependencies = [
"cfg-if",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -8264,10 +8724,14 @@ version = "0.18.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cfd8a792c1694c6da4f68db0a9d707c72bd260994da179e6030a5dcee00bb815"
dependencies = [
+ "blake2b_simd",
+ "blake2s_simd",
+ "blake3",
"core2",
"digest 0.10.7",
"multihash-derive 0.8.0",
"sha2 0.10.7",
+ "sha3",
"unsigned-varint",
]
@@ -8309,8 +8773,8 @@ checksum = "fc076939022111618a5026d3be019fd8b366e76314538ff9a1b59ffbcbf98bcd"
dependencies = [
"proc-macro-crate 1.3.1",
"proc-macro-error",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
"synstructure",
]
@@ -8334,8 +8798,8 @@ checksum = "d38685e08adb338659871ecfc6ee47ba9b22dcc8abcf6975d379cc49145c3040"
dependencies = [
"proc-macro-crate 1.3.1",
"proc-macro-error",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
"synstructure",
]
@@ -8382,8 +8846,8 @@ version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "91761aed67d03ad966ef783ae962ef9bbaca728d2dd7ceb7939ec110fffad998"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -8394,7 +8858,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7bddcd3bf5144b6392de80e04c347cd7fab2508f6df16a85fc496ecd5cec39bc"
dependencies = [
"clap 3.2.25",
- "rand",
+ "rand 0.8.5",
]
[[package]]
@@ -8469,6 +8933,18 @@ dependencies = [
"tokio",
]
+[[package]]
+name = "network-interface"
+version = "1.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ae72fd9dbd7f55dda80c00d66acc3b2130436fcba9ea89118fc508eaae48dfb0"
+dependencies = [
+ "cc",
+ "libc",
+ "thiserror",
+ "winapi",
+]
+
[[package]]
name = "nix"
version = "0.24.3"
@@ -8505,6 +8981,12 @@ dependencies = [
"libc",
]
+[[package]]
+name = "no-std-compat"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b93853da6d84c2e3c7d730d6473e8817692dd89be387eb01b94d7f108ecb5b8c"
+
[[package]]
name = "no-std-net"
version = "0.6.0"
@@ -8516,7 +8998,7 @@ name = "node-bench"
version = "0.9.0-dev"
dependencies = [
"array-bytes 6.1.0",
- "clap 4.4.18",
+ "clap 4.5.3",
"derive_more",
"fs_extra",
"futures",
@@ -8529,7 +9011,7 @@ dependencies = [
"node-primitives",
"node-testing",
"parity-db",
- "rand",
+ "rand 0.8.5",
"sc-basic-authorship",
"sc-client-api",
"sc-transaction-pool",
@@ -8542,7 +9024,7 @@ dependencies = [
"sp-runtime",
"sp-state-machine",
"sp-timestamp",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"sp-trie",
"tempfile",
]
@@ -8593,60 +9075,16 @@ dependencies = [
name = "node-runtime-generate-bags"
version = "3.0.0"
dependencies = [
- "clap 4.4.18",
+ "clap 4.5.3",
"generate-bags",
"kitchensink-runtime",
]
-[[package]]
-name = "node-template"
-version = "4.0.0-dev"
-dependencies = [
- "clap 4.4.18",
- "frame-benchmarking",
- "frame-benchmarking-cli",
- "frame-system",
- "futures",
- "jsonrpsee",
- "node-template-runtime",
- "pallet-transaction-payment",
- "pallet-transaction-payment-rpc",
- "sc-basic-authorship",
- "sc-cli",
- "sc-client-api",
- "sc-consensus",
- "sc-consensus-aura",
- "sc-consensus-grandpa",
- "sc-executor",
- "sc-network",
- "sc-offchain",
- "sc-rpc-api",
- "sc-service",
- "sc-telemetry",
- "sc-transaction-pool",
- "sc-transaction-pool-api",
- "serde_json",
- "sp-api",
- "sp-block-builder",
- "sp-blockchain",
- "sp-consensus-aura",
- "sp-consensus-grandpa",
- "sp-core",
- "sp-inherents",
- "sp-io",
- "sp-keyring",
- "sp-runtime",
- "sp-timestamp",
- "substrate-build-script-utils",
- "substrate-frame-rpc-system",
- "try-runtime-cli",
-]
-
[[package]]
name = "node-template-release"
version = "3.0.0"
dependencies = [
- "clap 4.4.18",
+ "clap 4.5.3",
"flate2",
"fs_extra",
"glob",
@@ -8656,45 +9094,6 @@ dependencies = [
"toml_edit 0.19.15",
]
-[[package]]
-name = "node-template-runtime"
-version = "4.0.0-dev"
-dependencies = [
- "frame-benchmarking",
- "frame-executive",
- "frame-support",
- "frame-system",
- "frame-system-benchmarking",
- "frame-system-rpc-runtime-api",
- "frame-try-runtime",
- "pallet-aura",
- "pallet-balances",
- "pallet-grandpa",
- "pallet-sudo",
- "pallet-template",
- "pallet-timestamp",
- "pallet-transaction-payment",
- "pallet-transaction-payment-rpc-runtime-api",
- "parity-scale-codec",
- "scale-info",
- "serde_json",
- "sp-api",
- "sp-block-builder",
- "sp-consensus-aura",
- "sp-consensus-grandpa",
- "sp-core",
- "sp-genesis-builder",
- "sp-inherents",
- "sp-offchain",
- "sp-runtime",
- "sp-session",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
- "sp-transaction-pool",
- "sp-version",
- "substrate-wasm-builder",
-]
-
[[package]]
name = "node-testing"
version = "3.0.0-dev"
@@ -8755,12 +9154,27 @@ dependencies = [
"minimal-lexical",
]
+[[package]]
+name = "nonzero_ext"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "38bf9645c8b145698bb0b18a4637dcacbc421ea49bef2317e4fd8065a387cf21"
+
[[package]]
name = "normalize-line-endings"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be"
+[[package]]
+name = "ntapi"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4"
+dependencies = [
+ "winapi",
+]
+
[[package]]
name = "nu-ansi-term"
version = "0.46.0"
@@ -8868,6 +9282,15 @@ dependencies = [
"libc",
]
+[[package]]
+name = "num_threads"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9"
+dependencies = [
+ "libc",
+]
+
[[package]]
name = "number_prefix"
version = "0.4.0"
@@ -8906,9 +9329,9 @@ dependencies = [
[[package]]
name = "once_cell"
-version = "1.18.0"
+version = "1.19.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
[[package]]
name = "oorandom"
@@ -8928,12 +9351,60 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
+[[package]]
+name = "openssl"
+version = "0.10.64"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f"
+dependencies = [
+ "bitflags 2.4.0",
+ "cfg-if",
+ "foreign-types",
+ "libc",
+ "once_cell",
+ "openssl-macros",
+ "openssl-sys",
+]
+
+[[package]]
+name = "openssl-macros"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
+dependencies = [
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
+]
+
[[package]]
name = "openssl-probe"
version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
+[[package]]
+name = "openssl-src"
+version = "300.2.3+3.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5cff92b6f71555b61bb9315f7c64da3ca43d87531622120fea0195fc761b4843"
+dependencies = [
+ "cc",
+]
+
+[[package]]
+name = "openssl-sys"
+version = "0.9.102"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2"
+dependencies = [
+ "cc",
+ "libc",
+ "openssl-src",
+ "pkg-config",
+ "vcpkg",
+]
+
[[package]]
name = "option-ext"
version = "0.2.0"
@@ -8942,9 +9413,9 @@ checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
[[package]]
name = "orchestra"
-version = "0.3.4"
+version = "0.3.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5edee0c1917703f8a28cd229cf6a5c91a7ee34be139ced16509ac5b53b9d0c51"
+checksum = "2356622ffdfe72362a45a1e5e87bb113b8327e596e39b91f11f0ef4395c8da79"
dependencies = [
"async-trait",
"dyn-clonable",
@@ -8959,17 +9430,17 @@ dependencies = [
[[package]]
name = "orchestra-proc-macro"
-version = "0.3.4"
+version = "0.3.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4f60e64a3808b5bb2786b9da09fc70714952aabcdd0eeba6f1718e3dbc34ad5b"
+checksum = "eedb646674596266dc9bb2b5c7eea7c36b32ecc7777eba0d510196972d72c4fd"
dependencies = [
"expander 2.0.0",
- "indexmap 2.0.0",
+ "indexmap 2.2.3",
"itertools 0.11.0",
"petgraph",
"proc-macro-crate 1.3.1",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -9002,7 +9473,7 @@ checksum = "c1b04fb49957986fdce4d6ee7a65027d55d4b6d2265e5848bbb507b58ccfdb6f"
[[package]]
name = "pallet-alliance"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"array-bytes 6.1.0",
"frame-benchmarking",
@@ -9018,12 +9489,12 @@ dependencies = [
"sp-crypto-hashing",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-asset-conversion"
-version = "4.0.0-dev"
+version = "10.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -9038,12 +9509,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-asset-conversion-tx-payment"
-version = "4.0.0-dev"
+version = "10.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -9056,13 +9527,13 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
]
[[package]]
name = "pallet-asset-rate"
-version = "4.0.0-dev"
+version = "7.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -9073,12 +9544,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-asset-tx-payment"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -9094,13 +9565,13 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
]
[[package]]
name = "pallet-assets"
-version = "4.0.0-dev"
+version = "29.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -9112,12 +9583,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-atomic-swap"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -9127,12 +9598,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-aura"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -9145,12 +9616,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-authority-discovery"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -9162,12 +9633,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-authorship"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -9177,12 +9648,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-babe"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-election-provider-support",
@@ -9205,14 +9676,14 @@ dependencies = [
"sp-runtime",
"sp-session",
"sp-staking",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-bags-list"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
- "aquamarine",
+ "aquamarine 0.5.0",
"docify",
"frame-benchmarking",
"frame-election-provider-support",
@@ -9225,8 +9696,8 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
]
[[package]]
@@ -9236,7 +9707,7 @@ dependencies = [
"frame-election-provider-support",
"honggfuzz",
"pallet-bags-list",
- "rand",
+ "rand 0.8.5",
]
[[package]]
@@ -9252,15 +9723,16 @@ dependencies = [
"pallet-staking",
"sp-core",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
+ "sp-tracing 16.0.0",
]
[[package]]
name = "pallet-balances"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
+ "docify",
"frame-benchmarking",
"frame-support",
"frame-system",
@@ -9272,12 +9744,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-beefy"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-election-provider-support",
"frame-support",
@@ -9300,12 +9772,12 @@ dependencies = [
"sp-session",
"sp-staking",
"sp-state-machine",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-beefy-mmr"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"array-bytes 6.1.0",
"binary-merkle-tree",
@@ -9325,12 +9797,12 @@ dependencies = [
"sp-runtime",
"sp-staking",
"sp-state-machine",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-bounties"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -9343,12 +9815,36 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
-name = "pallet-bridge-grandpa"
+name = "pallet-bridge-beefy"
version = "0.1.0"
+dependencies = [
+ "bp-beefy",
+ "bp-runtime",
+ "bp-test-utils",
+ "ckb-merkle-mountain-range",
+ "frame-support",
+ "frame-system",
+ "log",
+ "pallet-beefy-mmr",
+ "pallet-mmr",
+ "parity-scale-codec",
+ "rand 0.8.5",
+ "scale-info",
+ "serde",
+ "sp-consensus-beefy",
+ "sp-core",
+ "sp-io",
+ "sp-runtime",
+ "sp-std 14.0.0",
+]
+
+[[package]]
+name = "pallet-bridge-grandpa"
+version = "0.7.0"
dependencies = [
"bp-header-chain",
"bp-runtime",
@@ -9364,13 +9860,13 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-trie",
]
[[package]]
name = "pallet-bridge-messages"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"bp-messages",
"bp-runtime",
@@ -9385,12 +9881,12 @@ dependencies = [
"scale-info",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-bridge-parachains"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"bp-header-chain",
"bp-parachains",
@@ -9407,13 +9903,13 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-trie",
]
[[package]]
name = "pallet-bridge-relayers"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"bp-messages",
"bp-relayers",
@@ -9429,12 +9925,12 @@ dependencies = [
"sp-arithmetic",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-broker"
-version = "0.1.0"
+version = "0.6.0"
dependencies = [
"bitvec",
"frame-benchmarking",
@@ -9442,16 +9938,17 @@ dependencies = [
"frame-system",
"parity-scale-codec",
"scale-info",
+ "sp-api",
"sp-arithmetic",
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-child-bounties"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -9465,12 +9962,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-collator-selection"
-version = "3.0.0"
+version = "9.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -9482,20 +9979,20 @@ dependencies = [
"pallet-session",
"pallet-timestamp",
"parity-scale-codec",
- "rand",
+ "rand 0.8.5",
"scale-info",
"sp-consensus-aura",
"sp-core",
"sp-io",
"sp-runtime",
"sp-staking",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
]
[[package]]
name = "pallet-collective"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -9506,12 +10003,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-collective-content"
-version = "0.1.0"
+version = "0.6.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -9521,17 +10018,17 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-contracts"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"array-bytes 6.1.0",
"assert_matches",
"bitflags 1.3.2",
- "env_logger 0.9.3",
+ "env_logger 0.11.3",
"environmental",
"frame-benchmarking",
"frame-support",
@@ -9549,8 +10046,9 @@ dependencies = [
"pallet-timestamp",
"pallet-utility",
"parity-scale-codec",
+ "paste",
"pretty_assertions",
- "rand",
+ "rand 0.8.5",
"rand_pcg",
"scale-info",
"serde",
@@ -9560,8 +10058,8 @@ dependencies = [
"sp-io",
"sp-keystore",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"staging-xcm",
"staging-xcm-builder",
"wasm-instrument",
@@ -9581,12 +10079,11 @@ dependencies = [
"tempfile",
"toml 0.8.8",
"twox-hash",
- "wat",
]
[[package]]
name = "pallet-contracts-mock-network"
-version = "1.0.0"
+version = "3.0.0"
dependencies = [
"assert_matches",
"frame-support",
@@ -9614,8 +10111,8 @@ dependencies = [
"sp-io",
"sp-keystore",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"staging-xcm",
"staging-xcm-builder",
"staging-xcm-executor",
@@ -9624,16 +10121,16 @@ dependencies = [
[[package]]
name = "pallet-contracts-proc-macro"
-version = "4.0.0-dev"
+version = "18.0.0"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
name = "pallet-contracts-uapi"
-version = "4.0.0-dev"
+version = "5.0.0"
dependencies = [
"bitflags 1.3.2",
"parity-scale-codec",
@@ -9644,7 +10141,7 @@ dependencies = [
[[package]]
name = "pallet-conviction-voting"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"assert_matches",
"frame-benchmarking",
@@ -9658,29 +10155,30 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-core-fellowship"
-version = "4.0.0-dev"
+version = "12.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
"frame-system",
"log",
+ "pallet-ranked-collective",
"parity-scale-codec",
"scale-info",
"sp-arithmetic",
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-default-config-example"
-version = "4.0.0-dev"
+version = "10.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -9689,12 +10187,12 @@ dependencies = [
"scale-info",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-democracy"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -9709,12 +10207,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-dev-mode"
-version = "4.0.0-dev"
+version = "10.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -9725,7 +10223,7 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
@@ -9739,6 +10237,7 @@ dependencies = [
"pallet-bags-list",
"pallet-balances",
"pallet-election-provider-multi-phase",
+ "pallet-nomination-pools",
"pallet-session",
"pallet-staking",
"pallet-timestamp",
@@ -9750,13 +10249,13 @@ dependencies = [
"sp-npos-elections",
"sp-runtime",
"sp-staking",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
]
[[package]]
name = "pallet-election-provider-multi-phase"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"frame-benchmarking",
"frame-election-provider-support",
@@ -9767,21 +10266,21 @@ dependencies = [
"pallet-election-provider-support-benchmarking",
"parity-scale-codec",
"parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
"scale-info",
"sp-arithmetic",
"sp-core",
"sp-io",
"sp-npos-elections",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
- "strum 0.24.1",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
+ "strum 0.26.2",
]
[[package]]
name = "pallet-election-provider-support-benchmarking"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"frame-benchmarking",
"frame-election-provider-support",
@@ -9789,12 +10288,12 @@ dependencies = [
"parity-scale-codec",
"sp-npos-elections",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-elections-phragmen"
-version = "5.0.0-dev"
+version = "29.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -9808,14 +10307,14 @@ dependencies = [
"sp-npos-elections",
"sp-runtime",
"sp-staking",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"substrate-test-utils",
]
[[package]]
name = "pallet-example-basic"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -9827,15 +10326,15 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-example-frame-crate"
version = "0.0.1"
dependencies = [
- "frame",
"parity-scale-codec",
+ "polkadot-sdk-frame",
"scale-info",
]
@@ -9853,12 +10352,26 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
+]
+
+[[package]]
+name = "pallet-example-mbm"
+version = "0.1.0"
+dependencies = [
+ "frame-benchmarking",
+ "frame-support",
+ "frame-system",
+ "log",
+ "pallet-migrations",
+ "parity-scale-codec",
+ "scale-info",
+ "sp-io",
]
[[package]]
name = "pallet-example-offchain-worker"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -9870,12 +10383,32 @@ dependencies = [
"sp-io",
"sp-keystore",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
+]
+
+[[package]]
+name = "pallet-example-single-block-migrations"
+version = "0.0.1"
+dependencies = [
+ "docify",
+ "frame-executive",
+ "frame-support",
+ "frame-system",
+ "frame-try-runtime",
+ "log",
+ "pallet-balances",
+ "parity-scale-codec",
+ "scale-info",
+ "sp-core",
+ "sp-io",
+ "sp-runtime",
+ "sp-std 14.0.0",
+ "sp-version",
]
[[package]]
name = "pallet-example-split"
-version = "4.0.0-dev"
+version = "10.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -9885,12 +10418,12 @@ dependencies = [
"scale-info",
"sp-core",
"sp-io",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-example-tasks"
-version = "1.0.0-dev"
+version = "1.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -9901,7 +10434,7 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
@@ -9914,13 +10447,14 @@ dependencies = [
"pallet-example-frame-crate",
"pallet-example-kitchensink",
"pallet-example-offchain-worker",
+ "pallet-example-single-block-migrations",
"pallet-example-split",
"pallet-example-tasks",
]
[[package]]
name = "pallet-fast-unstake"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"docify",
"frame-benchmarking",
@@ -9938,14 +10472,14 @@ dependencies = [
"sp-io",
"sp-runtime",
"sp-staking",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"substrate-test-utils",
]
[[package]]
name = "pallet-glutton"
-version = "4.0.0-dev"
+version = "14.0.0"
dependencies = [
"blake2 0.10.6",
"frame-benchmarking",
@@ -9958,12 +10492,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-grandpa"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"finality-grandpa",
"frame-benchmarking",
@@ -9988,12 +10522,12 @@ dependencies = [
"sp-runtime",
"sp-session",
"sp-staking",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-identity"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"enumflags2",
"frame-benchmarking",
@@ -10007,12 +10541,12 @@ dependencies = [
"sp-io",
"sp-keystore",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-im-online"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -10027,12 +10561,12 @@ dependencies = [
"sp-io",
"sp-runtime",
"sp-staking",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-indices"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -10044,12 +10578,12 @@ dependencies = [
"sp-io",
"sp-keyring",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-insecure-randomness-collective-flip"
-version = "4.0.0-dev"
+version = "16.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -10059,12 +10593,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-lottery"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -10076,12 +10610,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-membership"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -10092,12 +10626,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-message-queue"
-version = "7.0.0-dev"
+version = "31.0.0"
dependencies = [
"environmental",
"frame-benchmarking",
@@ -10105,7 +10639,7 @@ dependencies = [
"frame-system",
"log",
"parity-scale-codec",
- "rand",
+ "rand 0.8.5",
"rand_distr",
"scale-info",
"serde",
@@ -10114,14 +10648,47 @@ dependencies = [
"sp-crypto-hashing",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"sp-weights",
]
+[[package]]
+name = "pallet-migrations"
+version = "1.0.0"
+dependencies = [
+ "docify",
+ "frame-benchmarking",
+ "frame-executive",
+ "frame-support",
+ "frame-system",
+ "impl-trait-for-tuples",
+ "log",
+ "parity-scale-codec",
+ "pretty_assertions",
+ "scale-info",
+ "sp-api",
+ "sp-block-builder",
+ "sp-core",
+ "sp-io",
+ "sp-runtime",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
+ "sp-version",
+]
+
+[[package]]
+name = "pallet-minimal-template"
+version = "0.0.0"
+dependencies = [
+ "parity-scale-codec",
+ "polkadot-sdk-frame",
+ "scale-info",
+]
+
[[package]]
name = "pallet-mixnet"
-version = "0.1.0-dev"
+version = "0.4.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -10135,15 +10702,15 @@ dependencies = [
"sp-io",
"sp-mixnet",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-mmr"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"array-bytes 6.1.0",
- "env_logger 0.9.3",
+ "env_logger 0.11.3",
"frame-benchmarking",
"frame-support",
"frame-system",
@@ -10155,12 +10722,12 @@ dependencies = [
"sp-io",
"sp-mmr-primitives",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-multisig"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -10171,12 +10738,12 @@ dependencies = [
"scale-info",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-nft-fractionalization"
-version = "4.0.0-dev"
+version = "10.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -10190,12 +10757,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-nfts"
-version = "4.0.0-dev"
+version = "22.0.0"
dependencies = [
"enumflags2",
"frame-benchmarking",
@@ -10209,22 +10776,22 @@ dependencies = [
"sp-io",
"sp-keystore",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-nfts-runtime-api"
-version = "4.0.0-dev"
+version = "14.0.0"
dependencies = [
"pallet-nfts",
"parity-scale-codec",
"sp-api",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-nis"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -10236,12 +10803,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-node-authorization"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -10251,12 +10818,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-nomination-pools"
-version = "1.0.0"
+version = "25.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -10268,13 +10835,13 @@ dependencies = [
"sp-io",
"sp-runtime",
"sp-staking",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
]
[[package]]
name = "pallet-nomination-pools-benchmarking"
-version = "1.0.0"
+version = "26.0.0"
dependencies = [
"frame-benchmarking",
"frame-election-provider-support",
@@ -10291,9 +10858,9 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-runtime-interface 17.0.0",
+ "sp-runtime-interface 24.0.0",
"sp-staking",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
@@ -10305,20 +10872,20 @@ dependencies = [
"honggfuzz",
"log",
"pallet-nomination-pools",
- "rand",
+ "rand 0.8.5",
"sp-io",
"sp-runtime",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
]
[[package]]
name = "pallet-nomination-pools-runtime-api"
-version = "1.0.0-dev"
+version = "23.0.0"
dependencies = [
"pallet-nomination-pools",
"parity-scale-codec",
"sp-api",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
@@ -10341,13 +10908,13 @@ dependencies = [
"sp-io",
"sp-runtime",
"sp-staking",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
]
[[package]]
name = "pallet-offences"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -10360,12 +10927,12 @@ dependencies = [
"sp-io",
"sp-runtime",
"sp-staking",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-offences-benchmarking"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-election-provider-support",
@@ -10387,12 +10954,12 @@ dependencies = [
"sp-io",
"sp-runtime",
"sp-staking",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-paged-list"
-version = "0.1.0"
+version = "0.6.0"
dependencies = [
"docify",
"frame-benchmarking",
@@ -10404,7 +10971,7 @@ dependencies = [
"sp-io",
"sp-metadata-ir",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
@@ -10420,39 +10987,58 @@ dependencies = [
[[package]]
name = "pallet-parachain-template"
-version = "0.1.0"
+version = "0.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
"frame-system",
"parity-scale-codec",
"scale-info",
- "serde",
"sp-core",
"sp-io",
"sp-runtime",
]
[[package]]
-name = "pallet-preimage"
-version = "4.0.0-dev"
+name = "pallet-parameters"
+version = "0.1.0"
dependencies = [
+ "docify",
"frame-benchmarking",
"frame-support",
"frame-system",
- "log",
"pallet-balances",
+ "pallet-example-basic",
"parity-scale-codec",
+ "paste",
"scale-info",
+ "serde",
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
+]
+
+[[package]]
+name = "pallet-preimage"
+version = "28.0.0"
+dependencies = [
+ "frame-benchmarking",
+ "frame-support",
+ "frame-system",
+ "log",
+ "pallet-balances",
+ "parity-scale-codec",
+ "scale-info",
+ "sp-core",
+ "sp-io",
+ "sp-runtime",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-proxy"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -10464,16 +11050,17 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-ranked-collective"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
"frame-system",
+ "impl-trait-for-tuples",
"log",
"parity-scale-codec",
"scale-info",
@@ -10481,12 +11068,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-recovery"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -10497,12 +11084,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-referenda"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"assert_matches",
"frame-benchmarking",
@@ -10519,12 +11106,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-remark"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -10535,12 +11122,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-root-offences"
-version = "1.0.0-dev"
+version = "25.0.0"
dependencies = [
"frame-election-provider-support",
"frame-support",
@@ -10556,12 +11143,12 @@ dependencies = [
"sp-io",
"sp-runtime",
"sp-staking",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-root-testing"
-version = "1.0.0-dev"
+version = "4.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -10570,12 +11157,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-safe-mode"
-version = "4.0.0-dev"
+version = "9.0.0"
dependencies = [
"docify",
"frame-benchmarking",
@@ -10590,24 +11177,25 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-salary"
-version = "4.0.0-dev"
+version = "13.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
"frame-system",
"log",
+ "pallet-ranked-collective",
"parity-scale-codec",
"scale-info",
"sp-arithmetic",
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
@@ -10626,12 +11214,12 @@ dependencies = [
"sp-crypto-hashing",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-scheduler"
-version = "4.0.0-dev"
+version = "29.0.0"
dependencies = [
"docify",
"frame-benchmarking",
@@ -10644,14 +11232,14 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-weights",
"substrate-test-utils",
]
[[package]]
name = "pallet-scored-pool"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -10661,12 +11249,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-session"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -10681,13 +11269,13 @@ dependencies = [
"sp-session",
"sp-staking",
"sp-state-machine",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-trie",
]
[[package]]
name = "pallet-session-benchmarking"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-election-provider-support",
@@ -10699,30 +11287,30 @@ dependencies = [
"pallet-staking-reward-curve",
"pallet-timestamp",
"parity-scale-codec",
- "rand",
+ "rand 0.8.5",
"scale-info",
"sp-core",
"sp-io",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-skip-feeless-payment"
-version = "1.0.0-dev"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
"parity-scale-codec",
"scale-info",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-society"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -10738,12 +11326,12 @@ dependencies = [
"sp-crypto-hashing",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-staking"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-election-provider-support",
@@ -10766,25 +11354,25 @@ dependencies = [
"sp-npos-elections",
"sp-runtime",
"sp-staking",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"substrate-test-utils",
]
[[package]]
name = "pallet-staking-reward-curve"
-version = "4.0.0-dev"
+version = "11.0.0"
dependencies = [
"proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"sp-runtime",
- "syn 2.0.48",
+ "syn 2.0.53",
]
[[package]]
name = "pallet-staking-reward-fn"
-version = "4.0.0-dev"
+version = "19.0.0"
dependencies = [
"log",
"sp-arithmetic",
@@ -10792,7 +11380,7 @@ dependencies = [
[[package]]
name = "pallet-staking-runtime-api"
-version = "4.0.0-dev"
+version = "14.0.0"
dependencies = [
"parity-scale-codec",
"sp-api",
@@ -10801,7 +11389,7 @@ dependencies = [
[[package]]
name = "pallet-state-trie-migration"
-version = "4.0.0-dev"
+version = "29.0.0"
dependencies = [
"frame-benchmarking",
"frame-remote-externalities",
@@ -10816,8 +11404,8 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"substrate-state-trie-migration-rpc",
"thousands",
"tokio",
@@ -10826,7 +11414,7 @@ dependencies = [
[[package]]
name = "pallet-statement"
-version = "4.0.0-dev"
+version = "10.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -10839,12 +11427,12 @@ dependencies = [
"sp-io",
"sp-runtime",
"sp-statement-store",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-sudo"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"docify",
"frame-benchmarking",
@@ -10855,12 +11443,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-template"
-version = "4.0.0-dev"
+version = "0.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -10870,12 +11458,11 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
]
[[package]]
name = "pallet-timestamp"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"docify",
"frame-benchmarking",
@@ -10888,14 +11475,14 @@ dependencies = [
"sp-inherents",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"sp-timestamp",
]
[[package]]
name = "pallet-tips"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -10909,13 +11496,13 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
]
[[package]]
name = "pallet-transaction-payment"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -10927,12 +11514,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-transaction-payment-rpc"
-version = "4.0.0-dev"
+version = "30.0.0"
dependencies = [
"jsonrpsee",
"pallet-transaction-payment-rpc-runtime-api",
@@ -10947,7 +11534,7 @@ dependencies = [
[[package]]
name = "pallet-transaction-payment-rpc-runtime-api"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"pallet-transaction-payment",
"parity-scale-codec",
@@ -10958,7 +11545,7 @@ dependencies = [
[[package]]
name = "pallet-transaction-storage"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"array-bytes 6.1.0",
"frame-benchmarking",
@@ -10973,13 +11560,13 @@ dependencies = [
"sp-inherents",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-transaction-storage-proof",
]
[[package]]
name = "pallet-treasury"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"docify",
"frame-benchmarking",
@@ -10994,12 +11581,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-tx-pause"
-version = "4.0.0-dev"
+version = "9.0.0"
dependencies = [
"docify",
"frame-benchmarking",
@@ -11013,12 +11600,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-uniques"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -11030,12 +11617,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-utility"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -11049,12 +11636,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-vesting"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -11066,12 +11653,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-whitelist"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -11084,12 +11671,12 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "pallet-xcm"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"bounded-collections",
"frame-benchmarking",
@@ -11106,15 +11693,16 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
"staging-xcm-builder",
"staging-xcm-executor",
+ "xcm-fee-payment-runtime-api",
]
[[package]]
name = "pallet-xcm-benchmarks"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -11130,8 +11718,8 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"staging-xcm",
"staging-xcm-builder",
"staging-xcm-executor",
@@ -11139,7 +11727,7 @@ dependencies = [
[[package]]
name = "pallet-xcm-bridge-hub"
-version = "0.1.0"
+version = "0.2.0"
dependencies = [
"bp-header-chain",
"bp-messages",
@@ -11156,7 +11744,7 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
"staging-xcm-builder",
"staging-xcm-executor",
@@ -11164,7 +11752,7 @@ dependencies = [
[[package]]
name = "pallet-xcm-bridge-hub-router"
-version = "0.1.0"
+version = "0.5.0"
dependencies = [
"bp-xcm-bridge-hub-router",
"frame-benchmarking",
@@ -11176,16 +11764,16 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
"staging-xcm-builder",
]
[[package]]
name = "parachain-template-node"
-version = "0.1.0"
+version = "0.0.0"
dependencies = [
- "clap 4.4.18",
+ "clap 4.5.3",
"color-print",
"cumulus-client-cli",
"cumulus-client-collator",
@@ -11241,7 +11829,7 @@ dependencies = [
[[package]]
name = "parachain-template-runtime"
-version = "0.1.0"
+version = "0.0.0"
dependencies = [
"cumulus-pallet-aura-ext",
"cumulus-pallet-parachain-system",
@@ -11249,6 +11837,7 @@ dependencies = [
"cumulus-pallet-xcm",
"cumulus-pallet-xcmp-queue",
"cumulus-primitives-core",
+ "cumulus-primitives-storage-weight-reclaim",
"cumulus-primitives-utility",
"frame-benchmarking",
"frame-executive",
@@ -11286,7 +11875,7 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-transaction-pool",
"sp-version",
"staging-parachain-info",
@@ -11298,7 +11887,7 @@ dependencies = [
[[package]]
name = "parachains-common"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"cumulus-primitives-core",
"cumulus-primitives-utility",
@@ -11313,26 +11902,37 @@ dependencies = [
"pallet-message-queue",
"pallet-xcm",
"parity-scale-codec",
- "polkadot-core-primitives",
"polkadot-primitives",
- "rococo-runtime-constants",
"scale-info",
- "smallvec",
"sp-consensus-aura",
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-parachain-info",
"staging-xcm",
"staging-xcm-executor",
"substrate-wasm-builder",
- "westend-runtime-constants",
+]
+
+[[package]]
+name = "parachains-relay"
+version = "0.1.0"
+dependencies = [
+ "async-std",
+ "async-trait",
+ "bp-polkadot-core",
+ "futures",
+ "log",
+ "parity-scale-codec",
+ "relay-substrate-client",
+ "relay-utils",
+ "sp-core",
]
[[package]]
name = "parachains-runtimes-test-utils"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"cumulus-pallet-parachain-system",
"cumulus-pallet-xcmp-queue",
@@ -11345,6 +11945,7 @@ dependencies = [
"pallet-balances",
"pallet-collator-selection",
"pallet-session",
+ "pallet-timestamp",
"pallet-xcm",
"parity-scale-codec",
"polkadot-parachain-primitives",
@@ -11352,14 +11953,27 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"staging-parachain-info",
"staging-xcm",
"staging-xcm-executor",
"substrate-wasm-builder",
]
+[[package]]
+name = "parity-bip39"
+version = "2.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4e69bf016dc406eff7d53a7d3f7cf1c2e72c82b9088aac1118591e36dd2cd3e9"
+dependencies = [
+ "bitcoin_hashes 0.13.0",
+ "rand 0.8.5",
+ "rand_core 0.6.4",
+ "serde",
+ "unicode-normalization",
+]
+
[[package]]
name = "parity-bytes"
version = "0.1.2"
@@ -11381,7 +11995,7 @@ dependencies = [
"lz4",
"memmap2 0.5.10",
"parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
"siphasher",
"snap",
]
@@ -11408,8 +12022,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "312270ee71e1cd70289dacf597cab7b207aa107d2f28191c2ae45b2ece18a260"
dependencies = [
"proc-macro-crate 1.3.1",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -11443,7 +12057,7 @@ version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f557c32c6d268a07c921471619c0295f5efad3a0e76d4f97a05c091a51d110b2"
dependencies = [
- "proc-macro2",
+ "proc-macro2 1.0.75",
"syn 1.0.109",
"synstructure",
]
@@ -11515,19 +12129,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7924d1d0ad836f665c9065e26d016c673ece3993f30d340068b16f282afc1156"
[[package]]
-name = "paste"
-version = "1.0.14"
+name = "password-hash"
+version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
+checksum = "346f04948ba92c43e8469c1ee6736c7563d71012b17d40745260fe106aac2166"
+dependencies = [
+ "base64ct",
+ "rand_core 0.6.4",
+ "subtle 2.5.0",
+]
[[package]]
-name = "pbkdf2"
-version = "0.8.0"
+name = "paste"
+version = "1.0.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d95f5254224e617595d2cc3cc73ff0a5eaf2637519e25f03388154e9378b6ffa"
-dependencies = [
- "crypto-mac 0.11.1",
-]
+checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
[[package]]
name = "pbkdf2"
@@ -11536,6 +12152,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2"
dependencies = [
"digest 0.10.7",
+ "password-hash",
]
[[package]]
@@ -11562,14 +12179,13 @@ dependencies = [
"frame-support",
"parachains-common",
"penpal-runtime",
- "rococo-emulated-chain",
"sp-core",
- "westend-emulated-chain",
+ "staging-xcm",
]
[[package]]
name = "penpal-runtime"
-version = "0.9.27"
+version = "0.14.0"
dependencies = [
"assets-common",
"cumulus-pallet-aura-ext",
@@ -11617,8 +12233,8 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"sp-transaction-pool",
"sp-version",
"staging-parachain-info",
@@ -11638,6 +12254,7 @@ dependencies = [
"parachains-common",
"people-rococo-runtime",
"sp-core",
+ "testnet-parachains-constants",
]
[[package]]
@@ -11671,7 +12288,9 @@ dependencies = [
"cumulus-pallet-session-benchmarking",
"cumulus-pallet-xcm",
"cumulus-pallet-xcmp-queue",
+ "cumulus-primitives-aura",
"cumulus-primitives-core",
+ "cumulus-primitives-storage-weight-reclaim",
"cumulus-primitives-utility",
"enumflags2",
"frame-benchmarking",
@@ -11713,8 +12332,8 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"sp-transaction-pool",
"sp-version",
"staging-parachain-info",
@@ -11722,6 +12341,7 @@ dependencies = [
"staging-xcm-builder",
"staging-xcm-executor",
"substrate-wasm-builder",
+ "testnet-parachains-constants",
]
[[package]]
@@ -11734,6 +12354,7 @@ dependencies = [
"parachains-common",
"people-westend-runtime",
"sp-core",
+ "testnet-parachains-constants",
]
[[package]]
@@ -11767,7 +12388,9 @@ dependencies = [
"cumulus-pallet-session-benchmarking",
"cumulus-pallet-xcm",
"cumulus-pallet-xcmp-queue",
+ "cumulus-primitives-aura",
"cumulus-primitives-core",
+ "cumulus-primitives-storage-weight-reclaim",
"cumulus-primitives-utility",
"enumflags2",
"frame-benchmarking",
@@ -11808,8 +12431,8 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"sp-transaction-pool",
"sp-version",
"staging-parachain-info",
@@ -11817,6 +12440,7 @@ dependencies = [
"staging-xcm-builder",
"staging-xcm-executor",
"substrate-wasm-builder",
+ "testnet-parachains-constants",
"westend-runtime-constants",
]
@@ -11854,9 +12478,9 @@ checksum = "68ca01446f50dbda87c1786af8770d535423fa8a53aec03b8f4e3d7eb10e0929"
dependencies = [
"pest",
"pest_meta",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -11877,7 +12501,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9"
dependencies = [
"fixedbitset",
- "indexmap 2.0.0",
+ "indexmap 2.2.3",
]
[[package]]
@@ -11895,9 +12519,9 @@ version = "1.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -11970,7 +12594,7 @@ dependencies = [
[[package]]
name = "polkadot"
-version = "1.6.0"
+version = "6.0.0"
dependencies = [
"assert_cmd",
"color-eyre",
@@ -11991,11 +12615,11 @@ dependencies = [
[[package]]
name = "polkadot-approval-distribution"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"bitvec",
- "env_logger 0.9.3",
+ "env_logger 0.11.3",
"futures",
"futures-timer",
"itertools 0.10.5",
@@ -12009,7 +12633,7 @@ dependencies = [
"polkadot-node-subsystem-util",
"polkadot-primitives",
"polkadot-primitives-test-helpers",
- "rand",
+ "rand 0.8.5",
"rand_chacha 0.3.1",
"rand_core 0.6.4",
"schnorrkel 0.11.4",
@@ -12020,12 +12644,12 @@ dependencies = [
[[package]]
name = "polkadot-availability-bitfield-distribution"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"always-assert",
"assert_matches",
"bitvec",
- "env_logger 0.9.3",
+ "env_logger 0.11.3",
"futures",
"futures-timer",
"log",
@@ -12035,7 +12659,7 @@ dependencies = [
"polkadot-node-subsystem-test-helpers",
"polkadot-node-subsystem-util",
"polkadot-primitives",
- "rand",
+ "rand 0.8.5",
"rand_chacha 0.3.1",
"sp-application-crypto",
"sp-authority-discovery",
@@ -12047,7 +12671,7 @@ dependencies = [
[[package]]
name = "polkadot-availability-distribution"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"derive_more",
@@ -12063,24 +12687,25 @@ dependencies = [
"polkadot-node-subsystem-util",
"polkadot-primitives",
"polkadot-primitives-test-helpers",
- "rand",
+ "polkadot-subsystem-bench",
+ "rand 0.8.5",
"sc-network",
"schnellru",
"sp-core",
"sp-keyring",
"sp-keystore",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"thiserror",
"tracing-gum",
]
[[package]]
name = "polkadot-availability-recovery"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"async-trait",
- "env_logger 0.9.3",
+ "env_logger 0.11.3",
"fatality",
"futures",
"futures-timer",
@@ -12094,7 +12719,8 @@ dependencies = [
"polkadot-node-subsystem-util",
"polkadot-primitives",
"polkadot-primitives-test-helpers",
- "rand",
+ "polkadot-subsystem-bench",
+ "rand 0.8.5",
"sc-network",
"schnellru",
"sp-application-crypto",
@@ -12107,10 +12733,10 @@ dependencies = [
[[package]]
name = "polkadot-cli"
-version = "1.1.0"
+version = "7.0.0"
dependencies = [
"cfg-if",
- "clap 4.4.18",
+ "clap 4.5.3",
"frame-benchmarking-cli",
"futures",
"log",
@@ -12129,18 +12755,18 @@ dependencies = [
"sp-io",
"sp-keyring",
"sp-maybe-compressed-blob",
+ "sp-runtime",
"substrate-build-script-utils",
"thiserror",
- "try-runtime-cli",
]
[[package]]
name = "polkadot-collator-protocol"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"bitvec",
- "env_logger 0.9.3",
+ "env_logger 0.11.3",
"fatality",
"futures",
"futures-timer",
@@ -12166,18 +12792,18 @@ dependencies = [
[[package]]
name = "polkadot-core-primitives"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"parity-scale-codec",
"scale-info",
"sp-core",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "polkadot-dispute-distribution"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"async-channel",
@@ -12186,7 +12812,7 @@ dependencies = [
"fatality",
"futures",
"futures-timer",
- "indexmap 2.0.0",
+ "indexmap 2.2.3",
"lazy_static",
"parity-scale-codec",
"polkadot-erasure-coding",
@@ -12203,14 +12829,14 @@ dependencies = [
"sp-application-crypto",
"sp-keyring",
"sp-keystore",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"thiserror",
"tracing-gum",
]
[[package]]
name = "polkadot-erasure-coding"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"criterion 0.4.0",
"parity-scale-codec",
@@ -12224,20 +12850,21 @@ dependencies = [
[[package]]
name = "polkadot-gossip-support"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"async-trait",
"futures",
"futures-timer",
"lazy_static",
+ "parking_lot 0.12.1",
"polkadot-node-network-protocol",
"polkadot-node-subsystem",
"polkadot-node-subsystem-test-helpers",
"polkadot-node-subsystem-util",
"polkadot-primitives",
"quickcheck",
- "rand",
+ "rand 0.8.5",
"rand_chacha 0.3.1",
"sc-network",
"sc-network-common",
@@ -12248,13 +12875,13 @@ dependencies = [
"sp-crypto-hashing",
"sp-keyring",
"sp-keystore",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"tracing-gum",
]
[[package]]
name = "polkadot-network-bridge"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"always-assert",
"assert_matches",
@@ -12283,7 +12910,7 @@ dependencies = [
[[package]]
name = "polkadot-node-collation-generation"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"futures",
@@ -12295,6 +12922,7 @@ dependencies = [
"polkadot-node-subsystem-util",
"polkadot-primitives",
"polkadot-primitives-test-helpers",
+ "rstest",
"sp-core",
"sp-keyring",
"sp-maybe-compressed-blob",
@@ -12304,20 +12932,20 @@ dependencies = [
[[package]]
name = "polkadot-node-core-approval-voting"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"async-trait",
"bitvec",
"derive_more",
- "env_logger 0.9.3",
+ "env_logger 0.11.3",
"futures",
"futures-timer",
"itertools 0.10.5",
"kvdb",
"kvdb-memorydb",
"log",
- "merlin 3.0.0",
+ "merlin",
"parity-scale-codec",
"parking_lot 0.12.1",
"polkadot-node-jaeger",
@@ -12328,7 +12956,7 @@ dependencies = [
"polkadot-overseer",
"polkadot-primitives",
"polkadot-primitives-test-helpers",
- "rand",
+ "rand 0.8.5",
"rand_chacha 0.3.1",
"rand_core 0.6.4",
"sc-keystore",
@@ -12348,11 +12976,11 @@ dependencies = [
[[package]]
name = "polkadot-node-core-av-store"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"bitvec",
- "env_logger 0.9.3",
+ "env_logger 0.11.3",
"futures",
"futures-timer",
"kvdb",
@@ -12378,7 +13006,7 @@ dependencies = [
[[package]]
name = "polkadot-node-core-backing"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"bitvec",
@@ -12392,19 +13020,21 @@ dependencies = [
"polkadot-primitives",
"polkadot-primitives-test-helpers",
"polkadot-statement-table",
+ "rstest",
"sc-keystore",
+ "schnellru",
"sp-application-crypto",
"sp-core",
"sp-keyring",
"sp-keystore",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"thiserror",
"tracing-gum",
]
[[package]]
name = "polkadot-node-core-bitfield-signing"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"futures",
"polkadot-node-subsystem",
@@ -12420,7 +13050,7 @@ dependencies = [
[[package]]
name = "polkadot-node-core-candidate-validation"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"async-trait",
@@ -12445,7 +13075,7 @@ dependencies = [
[[package]]
name = "polkadot-node-core-chain-api"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"futures",
"maplit",
@@ -12465,7 +13095,7 @@ dependencies = [
[[package]]
name = "polkadot-node-core-chain-selection"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"futures",
@@ -12486,7 +13116,7 @@ dependencies = [
[[package]]
name = "polkadot-node-core-dispute-coordinator"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"fatality",
@@ -12507,14 +13137,14 @@ dependencies = [
"sp-core",
"sp-keyring",
"sp-keystore",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"thiserror",
"tracing-gum",
]
[[package]]
name = "polkadot-node-core-parachains-inherent"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"async-trait",
"futures",
@@ -12530,7 +13160,7 @@ dependencies = [
[[package]]
name = "polkadot-node-core-prospective-parachains"
-version = "1.0.0"
+version = "6.0.0"
dependencies = [
"assert_matches",
"bitvec",
@@ -12544,6 +13174,7 @@ dependencies = [
"polkadot-node-subsystem-util",
"polkadot-primitives",
"polkadot-primitives-test-helpers",
+ "rstest",
"sc-keystore",
"sp-application-crypto",
"sp-core",
@@ -12555,7 +13186,7 @@ dependencies = [
[[package]]
name = "polkadot-node-core-provisioner"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"bitvec",
"fatality",
@@ -12567,6 +13198,8 @@ dependencies = [
"polkadot-node-subsystem-util",
"polkadot-primitives",
"polkadot-primitives-test-helpers",
+ "rstest",
+ "schnellru",
"sp-application-crypto",
"sp-keystore",
"thiserror",
@@ -12575,7 +13208,7 @@ dependencies = [
[[package]]
name = "polkadot-node-core-pvf"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"always-assert",
"array-bytes 6.1.0",
@@ -12601,14 +13234,14 @@ dependencies = [
"polkadot-parachain-primitives",
"polkadot-primitives",
"procfs",
- "rand",
+ "rand 0.8.5",
"rococo-runtime",
"rusty-fork",
"sc-sysinfo",
"slotmap",
"sp-core",
"sp-maybe-compressed-blob",
- "sp-wasm-interface 14.0.0",
+ "sp-wasm-interface 20.0.0",
"tempfile",
"test-parachain-adder",
"test-parachain-halt",
@@ -12619,7 +13252,7 @@ dependencies = [
[[package]]
name = "polkadot-node-core-pvf-checker"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"futures",
"futures-timer",
@@ -12642,7 +13275,7 @@ dependencies = [
[[package]]
name = "polkadot-node-core-pvf-common"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"cfg-if",
@@ -12660,9 +13293,9 @@ dependencies = [
"seccompiler",
"sp-core",
"sp-crypto-hashing",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
"sp-io",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"tempfile",
"thiserror",
"tracing-gum",
@@ -12670,7 +13303,7 @@ dependencies = [
[[package]]
name = "polkadot-node-core-pvf-execute-worker"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"cfg-if",
"cpu-time",
@@ -12685,7 +13318,7 @@ dependencies = [
[[package]]
name = "polkadot-node-core-pvf-prepare-worker"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"blake3",
"cfg-if",
@@ -12708,7 +13341,7 @@ dependencies = [
[[package]]
name = "polkadot-node-core-runtime-api"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"async-trait",
"futures",
@@ -12729,7 +13362,7 @@ dependencies = [
[[package]]
name = "polkadot-node-jaeger"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"lazy_static",
"log",
@@ -12739,6 +13372,7 @@ dependencies = [
"polkadot-node-primitives",
"polkadot-primitives",
"sc-network",
+ "sc-network-types",
"sp-core",
"thiserror",
"tokio",
@@ -12746,7 +13380,7 @@ dependencies = [
[[package]]
name = "polkadot-node-metrics"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_cmd",
"bs58 0.5.0",
@@ -12772,7 +13406,7 @@ dependencies = [
[[package]]
name = "polkadot-node-network-protocol"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"async-channel",
"async-trait",
@@ -12785,18 +13419,20 @@ dependencies = [
"polkadot-node-jaeger",
"polkadot-node-primitives",
"polkadot-primitives",
- "rand",
+ "rand 0.8.5",
"rand_chacha 0.3.1",
"sc-authority-discovery",
"sc-network",
- "strum 0.24.1",
+ "sc-network-types",
+ "sp-runtime",
+ "strum 0.26.2",
"thiserror",
"tracing-gum",
]
[[package]]
name = "polkadot-node-primitives"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"bitvec",
"bounded-vec",
@@ -12819,7 +13455,7 @@ dependencies = [
[[package]]
name = "polkadot-node-subsystem"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"polkadot-node-jaeger",
"polkadot-node-subsystem-types",
@@ -12849,7 +13485,7 @@ dependencies = [
[[package]]
name = "polkadot-node-subsystem-types"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"async-trait",
"bitvec",
@@ -12863,6 +13499,7 @@ dependencies = [
"polkadot-statement-table",
"sc-client-api",
"sc-network",
+ "sc-network-types",
"sc-transaction-pool-api",
"smallvec",
"sp-api",
@@ -12876,12 +13513,12 @@ dependencies = [
[[package]]
name = "polkadot-node-subsystem-util"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"async-trait",
"derive_more",
- "env_logger 0.9.3",
+ "env_logger 0.11.3",
"fatality",
"futures",
"futures-channel",
@@ -12906,7 +13543,7 @@ dependencies = [
"polkadot-primitives",
"polkadot-primitives-test-helpers",
"prioritized-metered-channel",
- "rand",
+ "rand 0.8.5",
"sc-client-api",
"schnellru",
"sp-application-crypto",
@@ -12919,7 +13556,7 @@ dependencies = [
[[package]]
name = "polkadot-overseer"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"async-trait",
@@ -12945,7 +13582,7 @@ dependencies = [
[[package]]
name = "polkadot-parachain-bin"
-version = "1.6.0"
+version = "4.0.0"
dependencies = [
"assert_cmd",
"asset-hub-rococo-runtime",
@@ -12953,7 +13590,7 @@ dependencies = [
"async-trait",
"bridge-hub-rococo-runtime",
"bridge-hub-westend-runtime",
- "clap 4.4.18",
+ "clap 4.5.3",
"collectives-westend-runtime",
"color-print",
"contracts-rococo-runtime",
@@ -13024,9 +13661,9 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-timestamp",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"sp-transaction-pool",
"sp-version",
"staging-xcm",
@@ -13035,13 +13672,14 @@ dependencies = [
"substrate-prometheus-endpoint",
"substrate-state-trie-migration-rpc",
"tempfile",
+ "testnet-parachains-constants",
"tokio",
"wait-timeout",
]
[[package]]
name = "polkadot-parachain-primitives"
-version = "1.0.0"
+version = "6.0.0"
dependencies = [
"bounded-collections",
"derive_more",
@@ -13051,16 +13689,17 @@ dependencies = [
"serde",
"sp-core",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-weights",
]
[[package]]
name = "polkadot-primitives"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"bitvec",
"hex-literal",
+ "log",
"parity-scale-codec",
"polkadot-core-primitives",
"polkadot-parachain-primitives",
@@ -13077,7 +13716,7 @@ dependencies = [
"sp-keystore",
"sp-runtime",
"sp-staking",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
@@ -13085,7 +13724,7 @@ name = "polkadot-primitives-test-helpers"
version = "1.0.0"
dependencies = [
"polkadot-primitives",
- "rand",
+ "rand 0.8.5",
"sp-application-crypto",
"sp-core",
"sp-keyring",
@@ -13094,7 +13733,7 @@ dependencies = [
[[package]]
name = "polkadot-rpc"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"jsonrpsee",
"mmr-rpc",
@@ -13126,7 +13765,7 @@ dependencies = [
[[package]]
name = "polkadot-runtime-common"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"bitvec",
"frame-benchmarking",
@@ -13153,7 +13792,6 @@ dependencies = [
"pallet-transaction-payment",
"pallet-treasury",
"pallet-vesting",
- "pallet-xcm-benchmarks",
"parity-scale-codec",
"polkadot-primitives",
"polkadot-primitives-test-helpers",
@@ -13174,7 +13812,7 @@ dependencies = [
"sp-runtime",
"sp-session",
"sp-staking",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
"staging-xcm-builder",
"staging-xcm-executor",
@@ -13183,19 +13821,19 @@ dependencies = [
[[package]]
name = "polkadot-runtime-metrics"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"bs58 0.5.0",
"frame-benchmarking",
"parity-scale-codec",
"polkadot-primitives",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
]
[[package]]
name = "polkadot-runtime-parachains"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"bitflags 1.3.2",
@@ -13225,8 +13863,9 @@ dependencies = [
"polkadot-primitives",
"polkadot-primitives-test-helpers",
"polkadot-runtime-metrics",
- "rand",
+ "rand 0.8.5",
"rand_chacha 0.3.1",
+ "rstest",
"rustc-hex",
"sc-keystore",
"scale-info",
@@ -13244,8 +13883,8 @@ dependencies = [
"sp-runtime",
"sp-session",
"sp-staking",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"staging-xcm",
"staging-xcm-executor",
"static_assertions",
@@ -13259,15 +13898,36 @@ dependencies = [
"cumulus-pallet-aura-ext",
"cumulus-pallet-parachain-system",
"docify",
- "frame",
+ "frame-executive",
+ "frame-support",
+ "frame-system",
"kitchensink-runtime",
+ "pallet-assets",
"pallet-aura",
+ "pallet-authorship",
+ "pallet-babe",
+ "pallet-balances",
+ "pallet-broker",
+ "pallet-collective",
"pallet-default-config-example",
+ "pallet-democracy",
+ "pallet-example-offchain-worker",
+ "pallet-example-single-block-migrations",
"pallet-examples",
- "pallet-timestamp",
- "parity-scale-codec",
- "sc-cli",
- "sc-client-db",
+ "pallet-multisig",
+ "pallet-nfts",
+ "pallet-preimage",
+ "pallet-proxy",
+ "pallet-referenda",
+ "pallet-scheduler",
+ "pallet-timestamp",
+ "pallet-transaction-payment",
+ "pallet-uniques",
+ "pallet-utility",
+ "parity-scale-codec",
+ "polkadot-sdk-frame",
+ "sc-cli",
+ "sc-client-db",
"sc-consensus-aura",
"sc-consensus-babe",
"sc-consensus-beefy",
@@ -13280,24 +13940,58 @@ dependencies = [
"scale-info",
"simple-mermaid",
"sp-api",
+ "sp-arithmetic",
"sp-core",
"sp-io",
"sp-keyring",
+ "sp-offchain",
"sp-runtime",
+ "sp-version",
"staging-chain-spec-builder",
"staging-node-cli",
"staging-parachain-info",
+ "staging-xcm",
"subkey",
"substrate-wasm-builder",
]
+[[package]]
+name = "polkadot-sdk-frame"
+version = "0.1.0"
+dependencies = [
+ "docify",
+ "frame-executive",
+ "frame-support",
+ "frame-system",
+ "frame-system-rpc-runtime-api",
+ "log",
+ "pallet-examples",
+ "parity-scale-codec",
+ "scale-info",
+ "sp-api",
+ "sp-arithmetic",
+ "sp-block-builder",
+ "sp-consensus-aura",
+ "sp-consensus-grandpa",
+ "sp-core",
+ "sp-inherents",
+ "sp-io",
+ "sp-offchain",
+ "sp-runtime",
+ "sp-session",
+ "sp-std 14.0.0",
+ "sp-transaction-pool",
+ "sp-version",
+]
+
[[package]]
name = "polkadot-service"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"async-trait",
- "env_logger 0.9.3",
+ "bitvec",
+ "env_logger 0.11.3",
"frame-benchmarking",
"frame-benchmarking-cli",
"frame-support",
@@ -13311,7 +14005,6 @@ dependencies = [
"log",
"mmr-gadget",
"pallet-babe",
- "pallet-im-online",
"pallet-staking",
"pallet-transaction-payment",
"pallet-transaction-payment-rpc-runtime-api",
@@ -13403,22 +14096,24 @@ dependencies = [
"sp-runtime",
"sp-session",
"sp-state-machine",
- "sp-storage 13.0.0",
+ "sp-storage 19.0.0",
"sp-timestamp",
"sp-transaction-pool",
"sp-version",
"sp-weights",
+ "staging-xcm",
"substrate-prometheus-endpoint",
"tempfile",
"thiserror",
"tracing-gum",
"westend-runtime",
"westend-runtime-constants",
+ "xcm-fee-payment-runtime-api",
]
[[package]]
name = "polkadot-statement-distribution"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"arrayvec 0.7.4",
"assert_matches",
@@ -13427,7 +14122,7 @@ dependencies = [
"fatality",
"futures",
"futures-timer",
- "indexmap 2.0.0",
+ "indexmap 2.2.3",
"parity-scale-codec",
"polkadot-node-network-protocol",
"polkadot-node-primitives",
@@ -13445,18 +14140,19 @@ dependencies = [
"sp-keyring",
"sp-keystore",
"sp-staking",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"thiserror",
"tracing-gum",
]
[[package]]
name = "polkadot-statement-table"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"parity-scale-codec",
"polkadot-primitives",
"sp-core",
+ "tracing-gum",
]
[[package]]
@@ -13465,20 +14161,30 @@ version = "1.0.0"
dependencies = [
"assert_matches",
"async-trait",
- "clap 4.4.18",
+ "bincode",
+ "bitvec",
+ "clap 4.5.3",
"clap-num",
"color-eyre",
"colored",
- "env_logger 0.9.3",
+ "env_logger 0.11.3",
"futures",
"futures-timer",
+ "hex",
"itertools 0.11.0",
+ "kvdb-memorydb",
"log",
"orchestra",
"parity-scale-codec",
"paste",
+ "polkadot-approval-distribution",
+ "polkadot-availability-bitfield-distribution",
+ "polkadot-availability-distribution",
"polkadot-availability-recovery",
"polkadot-erasure-coding",
+ "polkadot-node-core-approval-voting",
+ "polkadot-node-core-av-store",
+ "polkadot-node-core-chain-api",
"polkadot-node-metrics",
"polkadot-node-network-protocol",
"polkadot-node-primitives",
@@ -13492,16 +14198,27 @@ dependencies = [
"prometheus",
"pyroscope",
"pyroscope_pprofrs",
- "rand",
+ "rand 0.8.5",
+ "rand_chacha 0.3.1",
+ "rand_core 0.6.4",
+ "rand_distr",
"sc-keystore",
"sc-network",
+ "sc-network-types",
"sc-service",
+ "schnorrkel 0.11.4",
"serde",
+ "serde_json",
"serde_yaml",
+ "sha1",
"sp-application-crypto",
+ "sp-consensus",
+ "sp-consensus-babe",
"sp-core",
"sp-keyring",
"sp-keystore",
+ "sp-runtime",
+ "sp-timestamp",
"substrate-prometheus-endpoint",
"tokio",
"tracing-gum",
@@ -13542,7 +14259,7 @@ version = "1.0.0"
dependencies = [
"assert_matches",
"async-trait",
- "clap 4.4.18",
+ "clap 4.5.3",
"color-eyre",
"futures",
"futures-timer",
@@ -13560,7 +14277,7 @@ dependencies = [
"polkadot-node-subsystem-types",
"polkadot-node-subsystem-util",
"polkadot-primitives",
- "rand",
+ "rand 0.8.5",
"sp-core",
"sp-keystore",
"substrate-build-script-utils",
@@ -13621,7 +14338,7 @@ dependencies = [
"sp-runtime",
"sp-session",
"sp-staking",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-transaction-pool",
"sp-trie",
"sp-version",
@@ -13653,7 +14370,7 @@ dependencies = [
"polkadot-runtime-parachains",
"polkadot-service",
"polkadot-test-runtime",
- "rand",
+ "rand 0.8.5",
"sc-authority-discovery",
"sc-chain-spec",
"sc-cli",
@@ -13687,63 +14404,97 @@ dependencies = [
[[package]]
name = "polkadot-voter-bags"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
- "clap 4.4.18",
+ "clap 4.5.3",
"generate-bags",
"sp-io",
"westend-runtime",
]
[[package]]
-name = "polkavm-common"
-version = "0.4.0"
+name = "polkavm"
+version = "0.9.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a3693e5efdb2bf74e449cd25fd777a28bd7ed87e41f5d5da75eb31b4de48b94"
+dependencies = [
+ "libc",
+ "log",
+ "polkavm-assembler",
+ "polkavm-common",
+ "polkavm-linux-raw",
+]
+
+[[package]]
+name = "polkavm-assembler"
+version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fecd2caacfc4a7ee34243758dd7348859e6dec73f5e5df059890f5742ee46f0e"
+checksum = "1fa96d6d868243acc12de813dd48e756cbadcc8e13964c70d272753266deadc1"
+dependencies = [
+ "log",
+]
[[package]]
name = "polkavm-common"
-version = "0.5.0"
+version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88b4e215c80fe876147f3d58158d5dfeae7dabdd6047e175af77095b78d0035c"
+checksum = "1d9428a5cfcc85c5d7b9fc4b6a18c4b802d0173d768182a51cc7751640f08b92"
+dependencies = [
+ "log",
+]
[[package]]
name = "polkavm-derive"
-version = "0.4.0"
+version = "0.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db65a500d4adf574893c726ae365e37e4fbb7f2cbd403f6eaa1b665457456adc"
+checksum = "ae8c4bea6f3e11cd89bb18bcdddac10bd9a24015399bd1c485ad68a985a19606"
dependencies = [
- "polkavm-derive-impl",
- "syn 2.0.48",
+ "polkavm-derive-impl-macro",
]
[[package]]
name = "polkavm-derive-impl"
-version = "0.4.0"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c4fdfc49717fb9a196e74a5d28e0bc764eb394a2c803eb11133a31ac996c60c"
+dependencies = [
+ "polkavm-common",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
+]
+
+[[package]]
+name = "polkavm-derive-impl-macro"
+version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c99f4e7a9ff434ef9c885b874c99d824c3a5693bf5e3e8569bb1d2245a8c1b7f"
+checksum = "8ba81f7b5faac81e528eb6158a6f3c9e0bb1008e0ffa19653bc8dea925ecb429"
dependencies = [
- "polkavm-common 0.4.0",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "polkavm-derive-impl",
+ "syn 2.0.53",
]
[[package]]
name = "polkavm-linker"
-version = "0.5.0"
+version = "0.9.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a5a668bb33c7f0b5f4ca91adb1e1e71cf4930fef5e6909f46c2180d65cce37d0"
+checksum = "9c7be503e60cf56c0eb785f90aaba4b583b36bff00e93997d93fef97f9553c39"
dependencies = [
"gimli 0.28.0",
"hashbrown 0.14.3",
"log",
"object 0.32.2",
- "polkavm-common 0.5.0",
+ "polkavm-common",
"regalloc2 0.9.3",
"rustc-demangle",
]
+[[package]]
+name = "polkavm-linux-raw"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "26e85d3456948e650dff0cfc85603915847faf893ed1e66b020bb82ef4557120"
+
[[package]]
name = "polling"
version = "2.8.0"
@@ -13768,7 +14519,7 @@ checksum = "048aeb476be11a4b6ca432ca569e375810de9294ae78f4774e78ea98a9246ede"
dependencies = [
"cpufeatures",
"opaque-debug 0.3.0",
- "universal-hash 0.4.1",
+ "universal-hash 0.4.0",
]
[[package]]
@@ -13791,7 +14542,7 @@ dependencies = [
"cfg-if",
"cpufeatures",
"opaque-debug 0.3.0",
- "universal-hash 0.4.1",
+ "universal-hash 0.4.0",
]
[[package]]
@@ -13818,7 +14569,7 @@ version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "be97d76faf1bfab666e1375477b23fde79eccf0276e9b63b92a39d676a889ba9"
dependencies = [
- "rand",
+ "rand 0.8.5",
]
[[package]]
@@ -13905,7 +14656,7 @@ version = "0.1.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6c8646e95016a7a6c4adea95bafa8a16baab64b583356217f2c85db4a39d9a86"
dependencies = [
- "proc-macro2",
+ "proc-macro2 1.0.75",
"syn 1.0.109",
]
@@ -13915,8 +14666,8 @@ version = "0.2.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6c64d9ba0963cdcea2e1b2230fbae2bab30eb25a174be395c41e764bfb65dd62"
dependencies = [
- "proc-macro2",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "syn 2.0.53",
]
[[package]]
@@ -13976,8 +14727,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
dependencies = [
"proc-macro-error-attr",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
"version_check",
]
@@ -13988,8 +14739,8 @@ version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"version_check",
]
@@ -14005,9 +14756,18 @@ version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9b698b0b09d40e9b7c1a47b132d66a8b54bcd20583d9b6d06e4535e383b4405c"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
+]
+
+[[package]]
+name = "proc-macro2"
+version = "0.4.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759"
+dependencies = [
+ "unicode-xid 0.1.0",
]
[[package]]
@@ -14077,9 +14837,9 @@ version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -14105,7 +14865,7 @@ dependencies = [
"bitflags 2.4.0",
"lazy_static",
"num-traits",
- "rand",
+ "rand 0.8.5",
"rand_chacha 0.3.1",
"rand_xorshift",
"regex-syntax 0.8.2",
@@ -14141,7 +14901,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "119533552c9a7ffacc21e099c24a0ac8bb19c2a2a3f363de84cd9b844feab270"
dependencies = [
"bytes",
- "heck",
+ "heck 0.4.1",
"itertools 0.10.5",
"lazy_static",
"log",
@@ -14164,8 +14924,8 @@ checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4"
dependencies = [
"anyhow",
"itertools 0.10.5",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -14177,9 +14937,9 @@ checksum = "efb6c9a1dd1def8e2124d17e83a20af56f1570d6c2d2bd9e266ccb768df3840e"
dependencies = [
"anyhow",
"itertools 0.11.0",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -14230,6 +14990,22 @@ dependencies = [
"thiserror",
]
+[[package]]
+name = "quanta"
+version = "0.11.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a17e662a7a8291a865152364c20c7abc5e60486ab2001e8ec10b24862de0b9ab"
+dependencies = [
+ "crossbeam-utils",
+ "libc",
+ "mach2",
+ "once_cell",
+ "raw-cpuid",
+ "wasi 0.11.0+wasi-snapshot-preview1",
+ "web-sys",
+ "winapi",
+]
+
[[package]]
name = "quick-error"
version = "1.2.3"
@@ -14266,7 +15042,7 @@ checksum = "588f6378e4dd99458b60ec275b4477add41ce4fa9f64dcba6f15adccb19b50d6"
dependencies = [
"env_logger 0.8.4",
"log",
- "rand",
+ "rand 0.8.5",
]
[[package]]
@@ -14280,6 +15056,24 @@ dependencies = [
"pin-project-lite 0.1.12",
]
+[[package]]
+name = "quinn"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2e8b432585672228923edbbf64b8b12c14e1112f62e88737655b4a083dbcd78e"
+dependencies = [
+ "bytes",
+ "pin-project-lite 0.2.12",
+ "quinn-proto",
+ "quinn-udp",
+ "rustc-hash",
+ "rustls 0.20.8",
+ "thiserror",
+ "tokio",
+ "tracing",
+ "webpki",
+]
+
[[package]]
name = "quinn-proto"
version = "0.9.5"
@@ -14287,7 +15081,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c956be1b23f4261676aed05a0046e204e8a6836e50203902683a718af0797989"
dependencies = [
"bytes",
- "rand",
+ "rand 0.8.5",
"ring 0.16.20",
"rustc-hash",
"rustls 0.20.8",
@@ -14298,13 +15092,35 @@ dependencies = [
"webpki",
]
+[[package]]
+name = "quinn-udp"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "641538578b21f5e5c8ea733b736895576d0fe329bb883b937db6f4d163dbaaf4"
+dependencies = [
+ "libc",
+ "quinn-proto",
+ "socket2 0.4.9",
+ "tracing",
+ "windows-sys 0.42.0",
+]
+
+[[package]]
+name = "quote"
+version = "0.6.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1"
+dependencies = [
+ "proc-macro2 0.4.30",
+]
+
[[package]]
name = "quote"
version = "1.0.35"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
dependencies = [
- "proc-macro2",
+ "proc-macro2 1.0.75",
]
[[package]]
@@ -14313,6 +15129,19 @@ version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09"
+[[package]]
+name = "rand"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
+dependencies = [
+ "getrandom 0.1.16",
+ "libc",
+ "rand_chacha 0.2.2",
+ "rand_core 0.5.1",
+ "rand_hc",
+]
+
[[package]]
name = "rand"
version = "0.8.5"
@@ -14369,7 +15198,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31"
dependencies = [
"num-traits",
- "rand",
+ "rand 0.8.5",
+]
+
+[[package]]
+name = "rand_hc"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
+dependencies = [
+ "rand_core 0.5.1",
]
[[package]]
@@ -14390,6 +15228,15 @@ dependencies = [
"rand_core 0.6.4",
]
+[[package]]
+name = "raw-cpuid"
+version = "10.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c297679cb867470fa8c9f67dbba74a78d78e3e98d7cf2b08d6d71540f797332"
+dependencies = [
+ "bitflags 1.3.2",
+]
+
[[package]]
name = "rawpointer"
version = "0.2.1"
@@ -14398,9 +15245,9 @@ checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3"
[[package]]
name = "rayon"
-version = "1.7.0"
+version = "1.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b"
+checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
dependencies = [
"either",
"rayon-core",
@@ -14408,14 +15255,32 @@ dependencies = [
[[package]]
name = "rayon-core"
-version = "1.11.0"
+version = "1.12.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d"
+checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
dependencies = [
- "crossbeam-channel",
"crossbeam-deque",
"crossbeam-utils",
- "num_cpus",
+]
+
+[[package]]
+name = "rbtag"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "72c64936fcc0b811890a9d90020f3df5cec9c604efde88af7db6a35d365132a3"
+dependencies = [
+ "rbtag_derive",
+]
+
+[[package]]
+name = "rbtag_derive"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b75511b710ccca8adbb211e04763bd8c78fed585b0ec188a20ed9b0dd95567c4"
+dependencies = [
+ "proc-macro2 0.4.30",
+ "quote 0.6.13",
+ "syn 0.15.44",
]
[[package]]
@@ -14470,14 +15335,13 @@ dependencies = [
[[package]]
name = "reed-solomon-novelpoly"
-version = "1.0.0"
+version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3bd8f48b2066e9f69ab192797d66da804d1935bf22763204ed3675740cb0f221"
+checksum = "87413ebb313323d431e85d0afc5a68222aaed972843537cbfe5f061cf1b4bcab"
dependencies = [
"derive_more",
"fs-err",
- "itertools 0.10.5",
- "static_init 0.5.2",
+ "static_init",
"thiserror",
]
@@ -14496,9 +15360,9 @@ version = "1.0.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7f7473c2cfcf90008193dd0e3e16599455cb601a9fce322b5bb55de799664925"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -14577,37 +15441,109 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
[[package]]
-name = "remote-ext-tests-bags-list"
-version = "1.0.0"
+name = "relative-path"
+version = "1.9.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e898588f33fdd5b9420719948f9f2a32c922a246964576f71ba7f24f80610fbc"
+
+[[package]]
+name = "relay-substrate-client"
+version = "0.1.0"
dependencies = [
- "clap 4.4.18",
+ "async-std",
+ "async-trait",
+ "bp-header-chain",
+ "bp-messages",
+ "bp-polkadot-core",
+ "bp-runtime",
+ "finality-relay",
+ "frame-support",
"frame-system",
+ "futures",
+ "jsonrpsee",
"log",
- "pallet-bags-list-remote-tests",
+ "num-traits",
+ "pallet-balances",
+ "pallet-bridge-messages",
+ "pallet-transaction-payment",
+ "pallet-transaction-payment-rpc-runtime-api",
+ "pallet-utility",
+ "parity-scale-codec",
+ "rand 0.8.5",
+ "relay-utils",
+ "sc-chain-spec",
+ "sc-rpc-api",
+ "sc-transaction-pool-api",
+ "scale-info",
+ "sp-consensus-grandpa",
"sp-core",
- "sp-tracing 10.0.0",
+ "sp-rpc",
+ "sp-runtime",
+ "sp-std 14.0.0",
+ "sp-trie",
+ "sp-version",
+ "staging-xcm",
+ "thiserror",
"tokio",
- "westend-runtime",
- "westend-runtime-constants",
]
[[package]]
-name = "reqwest"
-version = "0.11.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e9ad3fe7488d7e34558a2033d45a0c90b72d97b4f80705666fea71472e2e6a1"
+name = "relay-utils"
+version = "0.1.0"
dependencies = [
- "base64 0.21.2",
- "bytes",
- "encoding_rs",
- "futures-core",
- "futures-util",
- "h2",
- "http",
- "http-body",
- "hyper",
- "hyper-rustls",
- "ipnet",
+ "ansi_term",
+ "anyhow",
+ "async-std",
+ "async-trait",
+ "backoff",
+ "bp-runtime",
+ "env_logger 0.11.3",
+ "futures",
+ "isahc",
+ "jsonpath_lib",
+ "log",
+ "num-traits",
+ "serde_json",
+ "sp-runtime",
+ "substrate-prometheus-endpoint",
+ "sysinfo",
+ "thiserror",
+ "time",
+ "tokio",
+]
+
+[[package]]
+name = "remote-ext-tests-bags-list"
+version = "1.0.0"
+dependencies = [
+ "clap 4.5.3",
+ "frame-system",
+ "log",
+ "pallet-bags-list-remote-tests",
+ "sp-core",
+ "sp-tracing 16.0.0",
+ "tokio",
+ "westend-runtime",
+ "westend-runtime-constants",
+]
+
+[[package]]
+name = "reqwest"
+version = "0.11.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3e9ad3fe7488d7e34558a2033d45a0c90b72d97b4f80705666fea71472e2e6a1"
+dependencies = [
+ "base64 0.21.2",
+ "bytes",
+ "encoding_rs",
+ "futures-core",
+ "futures-util",
+ "h2",
+ "http",
+ "http-body",
+ "hyper",
+ "hyper-rustls",
+ "ipnet",
"js-sys",
"log",
"mime",
@@ -14615,12 +15551,12 @@ dependencies = [
"percent-encoding",
"pin-project-lite 0.2.12",
"rustls 0.21.6",
- "rustls-pemfile",
+ "rustls-pemfile 1.0.3",
"serde",
"serde_json",
"serde_urlencoded",
"tokio",
- "tokio-rustls",
+ "tokio-rustls 0.24.1",
"tower-service",
"url",
"wasm-bindgen",
@@ -14647,7 +15583,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2"
dependencies = [
"hmac 0.12.1",
- "subtle 2.4.1",
+ "subtle 2.5.0",
]
[[package]]
@@ -14663,7 +15599,7 @@ dependencies = [
"blake2 0.10.6",
"common",
"fflonk",
- "merlin 3.0.0",
+ "merlin",
]
[[package]]
@@ -14748,7 +15684,7 @@ dependencies = [
[[package]]
name = "rococo-parachain-runtime"
-version = "0.1.0"
+version = "0.6.0"
dependencies = [
"cumulus-pallet-aura-ext",
"cumulus-pallet-parachain-system",
@@ -14757,6 +15693,7 @@ dependencies = [
"cumulus-ping",
"cumulus-primitives-aura",
"cumulus-primitives-core",
+ "cumulus-primitives-storage-weight-reclaim",
"cumulus-primitives-utility",
"frame-benchmarking",
"frame-executive",
@@ -14786,7 +15723,7 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-transaction-pool",
"sp-version",
"staging-parachain-info",
@@ -14794,13 +15731,15 @@ dependencies = [
"staging-xcm-builder",
"staging-xcm-executor",
"substrate-wasm-builder",
+ "testnet-parachains-constants",
]
[[package]]
name = "rococo-runtime"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"binary-merkle-tree",
+ "bitvec",
"frame-benchmarking",
"frame-executive",
"frame-remote-externalities",
@@ -14826,7 +15765,6 @@ dependencies = [
"pallet-elections-phragmen",
"pallet-grandpa",
"pallet-identity",
- "pallet-im-online",
"pallet-indices",
"pallet-membership",
"pallet-message-queue",
@@ -14834,6 +15772,7 @@ dependencies = [
"pallet-multisig",
"pallet-nis",
"pallet-offences",
+ "pallet-parameters",
"pallet-preimage",
"pallet-proxy",
"pallet-ranked-collective",
@@ -14874,6 +15813,7 @@ dependencies = [
"sp-block-builder",
"sp-consensus-babe",
"sp-consensus-beefy",
+ "sp-consensus-grandpa",
"sp-core",
"sp-genesis-builder",
"sp-inherents",
@@ -14884,9 +15824,9 @@ dependencies = [
"sp-runtime",
"sp-session",
"sp-staking",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
+ "sp-tracing 16.0.0",
"sp-transaction-pool",
"sp-trie",
"sp-version",
@@ -14897,11 +15837,12 @@ dependencies = [
"substrate-wasm-builder",
"tiny-keccak",
"tokio",
+ "xcm-fee-payment-runtime-api",
]
[[package]]
name = "rococo-runtime-constants"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"frame-support",
"polkadot-primitives",
@@ -14957,6 +15898,35 @@ dependencies = [
"winapi",
]
+[[package]]
+name = "rstest"
+version = "0.18.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "97eeab2f3c0a199bc4be135c36c924b6590b88c377d416494288c14f2db30199"
+dependencies = [
+ "futures",
+ "futures-timer",
+ "rstest_macros",
+ "rustc_version 0.4.0",
+]
+
+[[package]]
+name = "rstest_macros"
+version = "0.18.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d428f8247852f894ee1be110b375111b586d4fa431f6c46e64ba5a0dcccbe605"
+dependencies = [
+ "cfg-if",
+ "glob",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "regex",
+ "relative-path",
+ "rustc_version 0.4.0",
+ "syn 2.0.53",
+ "unicode-ident",
+]
+
[[package]]
name = "rtnetlink"
version = "0.10.1"
@@ -14998,7 +15968,7 @@ dependencies = [
"parity-scale-codec",
"primitive-types",
"proptest",
- "rand",
+ "rand 0.8.5",
"rlp",
"ruint-macro",
"serde",
@@ -15127,10 +16097,24 @@ checksum = "1d1feddffcfcc0b33f5c6ce9a29e341e4cd59c3f78e7ee45f4a40c038b1d6cbb"
dependencies = [
"log",
"ring 0.16.20",
- "rustls-webpki",
+ "rustls-webpki 0.101.4",
"sct",
]
+[[package]]
+name = "rustls"
+version = "0.22.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e87c9956bd9807afa1f77e0f7594af32566e830e088a5576d27c5b6f30f49d41"
+dependencies = [
+ "log",
+ "ring 0.17.7",
+ "rustls-pki-types",
+ "rustls-webpki 0.102.2",
+ "subtle 2.5.0",
+ "zeroize",
+]
+
[[package]]
name = "rustls-native-certs"
version = "0.6.3"
@@ -15138,7 +16122,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00"
dependencies = [
"openssl-probe",
- "rustls-pemfile",
+ "rustls-pemfile 1.0.3",
+ "schannel",
+ "security-framework",
+]
+
+[[package]]
+name = "rustls-native-certs"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f1fb85efa936c42c6d5fc28d2629bb51e4b2f4b8a5211e297d599cc5a093792"
+dependencies = [
+ "openssl-probe",
+ "rustls-pemfile 2.0.0",
+ "rustls-pki-types",
"schannel",
"security-framework",
]
@@ -15152,6 +16149,22 @@ dependencies = [
"base64 0.21.2",
]
+[[package]]
+name = "rustls-pemfile"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "35e4980fa29e4c4b212ffb3db068a564cbf560e51d3944b7c88bd8bf5bec64f4"
+dependencies = [
+ "base64 0.21.2",
+ "rustls-pki-types",
+]
+
+[[package]]
+name = "rustls-pki-types"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0a716eb65e3158e90e17cd93d855216e27bde02745ab842f2cab4a39dba1bacf"
+
[[package]]
name = "rustls-webpki"
version = "0.101.4"
@@ -15162,6 +16175,17 @@ dependencies = [
"untrusted 0.7.1",
]
+[[package]]
+name = "rustls-webpki"
+version = "0.102.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "faaa0a62740bedb9b2ef5afa303da42764c012f743917351dc9a237ea1663610"
+dependencies = [
+ "ring 0.17.7",
+ "rustls-pki-types",
+ "untrusted 0.9.0",
+]
+
[[package]]
name = "rustversion"
version = "1.0.14"
@@ -15237,40 +16261,42 @@ dependencies = [
[[package]]
name = "sc-allocator"
-version = "4.1.0-dev"
+version = "23.0.0"
dependencies = [
"log",
"sp-core",
- "sp-wasm-interface 14.0.0",
+ "sp-wasm-interface 20.0.0",
"thiserror",
]
[[package]]
name = "sc-authority-discovery"
-version = "0.10.0-dev"
+version = "0.34.0"
dependencies = [
"async-trait",
"futures",
"futures-timer",
"ip_network",
"libp2p",
+ "linked_hash_set",
"log",
- "multihash 0.18.1",
+ "multihash 0.17.0",
"multihash-codetable",
"parity-scale-codec",
"prost 0.12.3",
"prost-build",
"quickcheck",
- "rand",
+ "rand 0.8.5",
"sc-client-api",
"sc-network",
+ "sc-network-types",
"sp-api",
"sp-authority-discovery",
"sp-blockchain",
"sp-core",
"sp-keystore",
"sp-runtime",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"substrate-prometheus-endpoint",
"substrate-test-runtime-client",
"thiserror",
@@ -15278,7 +16304,7 @@ dependencies = [
[[package]]
name = "sc-basic-authorship"
-version = "0.10.0-dev"
+version = "0.34.0"
dependencies = [
"futures",
"futures-timer",
@@ -15303,7 +16329,7 @@ dependencies = [
[[package]]
name = "sc-block-builder"
-version = "0.10.0-dev"
+version = "0.33.0"
dependencies = [
"parity-scale-codec",
"sp-api",
@@ -15319,7 +16345,7 @@ dependencies = [
[[package]]
name = "sc-chain-spec"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"array-bytes 6.1.0",
"docify",
@@ -15343,27 +16369,27 @@ dependencies = [
"sp-keyring",
"sp-runtime",
"sp-state-machine",
+ "sp-tracing 16.0.0",
"substrate-test-runtime",
]
[[package]]
name = "sc-chain-spec-derive"
-version = "4.0.0-dev"
+version = "11.0.0"
dependencies = [
"proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
name = "sc-cli"
-version = "0.10.0-dev"
+version = "0.36.0"
dependencies = [
"array-bytes 6.1.0",
- "bip39",
"chrono",
- "clap 4.4.18",
+ "clap 4.5.3",
"fdlimit",
"futures",
"futures-timer",
@@ -15371,8 +16397,9 @@ dependencies = [
"libp2p-identity",
"log",
"names",
+ "parity-bip39",
"parity-scale-codec",
- "rand",
+ "rand 0.8.5",
"regex",
"rpassword",
"sc-client-api",
@@ -15392,7 +16419,7 @@ dependencies = [
"sp-keystore",
"sp-panic-handler",
"sp-runtime",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"sp-version",
"tempfile",
"thiserror",
@@ -15401,7 +16428,7 @@ dependencies = [
[[package]]
name = "sc-client-api"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"fnv",
"futures",
@@ -15416,11 +16443,11 @@ dependencies = [
"sp-consensus",
"sp-core",
"sp-database",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
"sp-runtime",
"sp-state-machine",
"sp-statement-store",
- "sp-storage 13.0.0",
+ "sp-storage 19.0.0",
"sp-test-primitives",
"sp-trie",
"substrate-prometheus-endpoint",
@@ -15430,7 +16457,7 @@ dependencies = [
[[package]]
name = "sc-client-db"
-version = "0.10.0-dev"
+version = "0.35.0"
dependencies = [
"array-bytes 6.1.0",
"criterion 0.4.0",
@@ -15445,7 +16472,7 @@ dependencies = [
"parity-scale-codec",
"parking_lot 0.12.1",
"quickcheck",
- "rand",
+ "rand 0.8.5",
"sc-client-api",
"sc-state-db",
"schnellru",
@@ -15455,7 +16482,7 @@ dependencies = [
"sp-database",
"sp-runtime",
"sp-state-machine",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"sp-trie",
"substrate-test-runtime-client",
"tempfile",
@@ -15463,16 +16490,16 @@ dependencies = [
[[package]]
name = "sc-consensus"
-version = "0.10.0-dev"
+version = "0.33.0"
dependencies = [
"async-trait",
"futures",
"futures-timer",
- "libp2p-identity",
"log",
"mockall",
"parking_lot 0.12.1",
"sc-client-api",
+ "sc-network-types",
"sc-utils",
"serde",
"sp-api",
@@ -15488,7 +16515,7 @@ dependencies = [
[[package]]
name = "sc-consensus-aura"
-version = "0.10.0-dev"
+version = "0.34.0"
dependencies = [
"async-trait",
"futures",
@@ -15516,7 +16543,7 @@ dependencies = [
"sp-keystore",
"sp-runtime",
"sp-timestamp",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"substrate-prometheus-endpoint",
"substrate-test-runtime-client",
"tempfile",
@@ -15526,7 +16553,7 @@ dependencies = [
[[package]]
name = "sc-consensus-babe"
-version = "0.10.0-dev"
+version = "0.34.0"
dependencies = [
"async-trait",
"fork-tree",
@@ -15559,7 +16586,7 @@ dependencies = [
"sp-keystore",
"sp-runtime",
"sp-timestamp",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"substrate-prometheus-endpoint",
"substrate-test-runtime-client",
"thiserror",
@@ -15568,7 +16595,7 @@ dependencies = [
[[package]]
name = "sc-consensus-babe-rpc"
-version = "0.10.0-dev"
+version = "0.34.0"
dependencies = [
"futures",
"jsonrpsee",
@@ -15596,7 +16623,7 @@ dependencies = [
[[package]]
name = "sc-consensus-beefy"
-version = "4.0.0-dev"
+version = "13.0.0"
dependencies = [
"array-bytes 6.1.0",
"async-channel",
@@ -15613,6 +16640,7 @@ dependencies = [
"sc-network-gossip",
"sc-network-sync",
"sc-network-test",
+ "sc-network-types",
"sc-utils",
"serde",
"sp-api",
@@ -15628,7 +16656,7 @@ dependencies = [
"sp-keystore",
"sp-mmr-primitives",
"sp-runtime",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"substrate-prometheus-endpoint",
"substrate-test-runtime-client",
"tempfile",
@@ -15639,7 +16667,7 @@ dependencies = [
[[package]]
name = "sc-consensus-beefy-rpc"
-version = "4.0.0-dev"
+version = "13.0.0"
dependencies = [
"futures",
"jsonrpsee",
@@ -15660,7 +16688,7 @@ dependencies = [
[[package]]
name = "sc-consensus-epochs"
-version = "0.10.0-dev"
+version = "0.33.0"
dependencies = [
"fork-tree",
"parity-scale-codec",
@@ -15672,9 +16700,9 @@ dependencies = [
[[package]]
name = "sc-consensus-grandpa"
-version = "0.10.0-dev"
+version = "0.19.0"
dependencies = [
- "ahash 0.8.7",
+ "ahash 0.8.8",
"array-bytes 6.1.0",
"assert_matches",
"async-trait",
@@ -15686,7 +16714,7 @@ dependencies = [
"log",
"parity-scale-codec",
"parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
"sc-block-builder",
"sc-chain-spec",
"sc-client-api",
@@ -15696,6 +16724,7 @@ dependencies = [
"sc-network-gossip",
"sc-network-sync",
"sc-network-test",
+ "sc-network-types",
"sc-telemetry",
"sc-transaction-pool-api",
"sc-utils",
@@ -15712,7 +16741,7 @@ dependencies = [
"sp-keyring",
"sp-keystore",
"sp-runtime",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"substrate-prometheus-endpoint",
"substrate-test-runtime-client",
"thiserror",
@@ -15721,7 +16750,7 @@ dependencies = [
[[package]]
name = "sc-consensus-grandpa-rpc"
-version = "0.10.0-dev"
+version = "0.19.0"
dependencies = [
"finality-grandpa",
"futures",
@@ -15745,7 +16774,7 @@ dependencies = [
[[package]]
name = "sc-consensus-manual-seal"
-version = "0.10.0-dev"
+version = "0.35.0"
dependencies = [
"assert_matches",
"async-trait",
@@ -15783,7 +16812,7 @@ dependencies = [
[[package]]
name = "sc-consensus-pow"
-version = "0.10.0-dev"
+version = "0.33.0"
dependencies = [
"async-trait",
"futures",
@@ -15807,7 +16836,7 @@ dependencies = [
[[package]]
name = "sc-consensus-slots"
-version = "0.10.0-dev"
+version = "0.33.0"
dependencies = [
"async-trait",
"futures",
@@ -15830,18 +16859,19 @@ dependencies = [
[[package]]
name = "sc-executor"
-version = "0.10.0-dev"
+version = "0.32.0"
dependencies = [
"array-bytes 6.1.0",
"assert_matches",
"criterion 0.4.0",
- "env_logger 0.9.3",
+ "env_logger 0.11.3",
"num_cpus",
"parity-scale-codec",
"parking_lot 0.12.1",
"paste",
"regex",
"sc-executor-common",
+ "sc-executor-polkavm",
"sc-executor-wasmtime",
"sc-runtime-test",
"sc-tracing",
@@ -15849,38 +16879,49 @@ dependencies = [
"sp-api",
"sp-core",
"sp-crypto-hashing",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
"sp-io",
"sp-maybe-compressed-blob",
"sp-panic-handler",
"sp-runtime",
- "sp-runtime-interface 17.0.0",
+ "sp-runtime-interface 24.0.0",
"sp-state-machine",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"sp-trie",
"sp-version",
- "sp-wasm-interface 14.0.0",
+ "sp-wasm-interface 20.0.0",
"substrate-test-runtime",
"tempfile",
"tracing",
- "tracing-subscriber 0.2.25",
+ "tracing-subscriber 0.3.18",
"wat",
]
[[package]]
name = "sc-executor-common"
-version = "0.10.0-dev"
+version = "0.29.0"
dependencies = [
+ "polkavm",
"sc-allocator",
"sp-maybe-compressed-blob",
- "sp-wasm-interface 14.0.0",
+ "sp-wasm-interface 20.0.0",
"thiserror",
"wasm-instrument",
]
+[[package]]
+name = "sc-executor-polkavm"
+version = "0.29.0"
+dependencies = [
+ "log",
+ "polkavm",
+ "sc-executor-common",
+ "sp-wasm-interface 20.0.0",
+]
+
[[package]]
name = "sc-executor-wasmtime"
-version = "0.10.0-dev"
+version = "0.29.0"
dependencies = [
"anyhow",
"cargo_metadata",
@@ -15895,8 +16936,8 @@ dependencies = [
"sc-executor-common",
"sc-runtime-test",
"sp-io",
- "sp-runtime-interface 17.0.0",
- "sp-wasm-interface 14.0.0",
+ "sp-runtime-interface 24.0.0",
+ "sp-wasm-interface 20.0.0",
"tempfile",
"wasmtime",
"wat",
@@ -15904,7 +16945,7 @@ dependencies = [
[[package]]
name = "sc-informant"
-version = "0.10.0-dev"
+version = "0.33.0"
dependencies = [
"ansi_term",
"futures",
@@ -15920,7 +16961,7 @@ dependencies = [
[[package]]
name = "sc-keystore"
-version = "4.0.0-dev"
+version = "25.0.0"
dependencies = [
"array-bytes 6.1.0",
"parking_lot 0.12.1",
@@ -15934,7 +16975,7 @@ dependencies = [
[[package]]
name = "sc-mixnet"
-version = "0.1.0-dev"
+version = "0.4.0"
dependencies = [
"array-bytes 4.2.0",
"arrayvec 0.7.4",
@@ -15942,7 +16983,6 @@ dependencies = [
"bytes",
"futures",
"futures-timer",
- "libp2p-identity",
"log",
"mixnet",
"multiaddr",
@@ -15950,6 +16990,7 @@ dependencies = [
"parking_lot 0.12.1",
"sc-client-api",
"sc-network",
+ "sc-network-types",
"sc-transaction-pool-api",
"sp-api",
"sp-consensus",
@@ -15962,7 +17003,7 @@ dependencies = [
[[package]]
name = "sc-network"
-version = "0.10.0-dev"
+version = "0.34.0"
dependencies = [
"array-bytes 6.1.0",
"assert_matches",
@@ -15970,6 +17011,7 @@ dependencies = [
"async-trait",
"asynchronous-codec",
"bytes",
+ "cid 0.9.0",
"either",
"fnv",
"futures",
@@ -15977,28 +17019,37 @@ dependencies = [
"ip_network",
"libp2p",
"linked_hash_set",
+ "litep2p",
"log",
"mockall",
"multistream-select",
+ "once_cell",
"parity-scale-codec",
"parking_lot 0.12.1",
"partial_sort",
"pin-project",
- "rand",
+ "prost 0.11.9",
+ "prost-build",
+ "rand 0.8.5",
+ "sc-block-builder",
"sc-client-api",
"sc-network-common",
"sc-network-light",
"sc-network-sync",
+ "sc-network-types",
"sc-utils",
+ "schnellru",
"serde",
"serde_json",
"smallvec",
"sp-arithmetic",
"sp-blockchain",
+ "sp-consensus",
"sp-core",
+ "sp-crypto-hashing",
"sp-runtime",
"sp-test-primitives",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"substrate-prometheus-endpoint",
"substrate-test-runtime",
"substrate-test-runtime-client",
@@ -16009,39 +17060,14 @@ dependencies = [
"tokio-test",
"tokio-util",
"unsigned-varint",
+ "void",
"wasm-timer",
"zeroize",
]
-[[package]]
-name = "sc-network-bitswap"
-version = "0.10.0-dev"
-dependencies = [
- "async-channel",
- "cid",
- "futures",
- "libp2p-identity",
- "log",
- "prost 0.12.3",
- "prost-build",
- "sc-block-builder",
- "sc-client-api",
- "sc-consensus",
- "sc-network",
- "sp-blockchain",
- "sp-consensus",
- "sp-crypto-hashing",
- "sp-runtime",
- "substrate-test-runtime",
- "substrate-test-runtime-client",
- "thiserror",
- "tokio",
- "unsigned-varint",
-]
-
[[package]]
name = "sc-network-common"
-version = "0.10.0-dev"
+version = "0.33.0"
dependencies = [
"async-trait",
"bitflags 1.3.2",
@@ -16050,6 +17076,7 @@ dependencies = [
"parity-scale-codec",
"prost-build",
"sc-consensus",
+ "sc-network-types",
"sp-consensus",
"sp-consensus-grandpa",
"sp-runtime",
@@ -16058,9 +17085,9 @@ dependencies = [
[[package]]
name = "sc-network-gossip"
-version = "0.10.0-dev"
+version = "0.34.0"
dependencies = [
- "ahash 0.8.7",
+ "ahash 0.8.8",
"async-trait",
"futures",
"futures-timer",
@@ -16071,6 +17098,7 @@ dependencies = [
"sc-network",
"sc-network-common",
"sc-network-sync",
+ "sc-network-types",
"schnellru",
"sp-runtime",
"substrate-prometheus-endpoint",
@@ -16081,18 +17109,18 @@ dependencies = [
[[package]]
name = "sc-network-light"
-version = "0.10.0-dev"
+version = "0.33.0"
dependencies = [
"array-bytes 6.1.0",
"async-channel",
"futures",
- "libp2p-identity",
"log",
"parity-scale-codec",
"prost 0.12.3",
"prost-build",
"sc-client-api",
"sc-network",
+ "sc-network-types",
"sp-blockchain",
"sp-core",
"sp-runtime",
@@ -16101,7 +17129,7 @@ dependencies = [
[[package]]
name = "sc-network-statement"
-version = "0.10.0-dev"
+version = "0.16.0"
dependencies = [
"array-bytes 6.1.0",
"async-channel",
@@ -16112,14 +17140,16 @@ dependencies = [
"sc-network",
"sc-network-common",
"sc-network-sync",
+ "sc-network-types",
"sp-consensus",
+ "sp-runtime",
"sp-statement-store",
"substrate-prometheus-endpoint",
]
[[package]]
name = "sc-network-sync"
-version = "0.10.0-dev"
+version = "0.33.0"
dependencies = [
"array-bytes 6.1.0",
"async-channel",
@@ -16139,6 +17169,7 @@ dependencies = [
"sc-consensus",
"sc-network",
"sc-network-common",
+ "sc-network-types",
"sc-utils",
"schnellru",
"smallvec",
@@ -16149,7 +17180,7 @@ dependencies = [
"sp-core",
"sp-runtime",
"sp-test-primitives",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"substrate-prometheus-endpoint",
"substrate-test-runtime-client",
"thiserror",
@@ -16167,7 +17198,7 @@ dependencies = [
"libp2p",
"log",
"parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
"sc-block-builder",
"sc-client-api",
"sc-consensus",
@@ -16175,13 +17206,14 @@ dependencies = [
"sc-network-common",
"sc-network-light",
"sc-network-sync",
+ "sc-network-types",
"sc-service",
"sc-utils",
"sp-blockchain",
"sp-consensus",
"sp-core",
"sp-runtime",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"substrate-test-runtime",
"substrate-test-runtime-client",
"tokio",
@@ -16189,7 +17221,7 @@ dependencies = [
[[package]]
name = "sc-network-transactions"
-version = "0.10.0-dev"
+version = "0.33.0"
dependencies = [
"array-bytes 6.1.0",
"futures",
@@ -16199,17 +17231,32 @@ dependencies = [
"sc-network",
"sc-network-common",
"sc-network-sync",
+ "sc-network-types",
"sc-utils",
"sp-consensus",
"sp-runtime",
"substrate-prometheus-endpoint",
]
+[[package]]
+name = "sc-network-types"
+version = "0.10.0-dev"
+dependencies = [
+ "bs58 0.4.0",
+ "libp2p-identity",
+ "litep2p",
+ "multiaddr",
+ "multihash 0.17.0",
+ "rand 0.8.5",
+ "thiserror",
+]
+
[[package]]
name = "sc-offchain"
-version = "4.0.0-dev"
+version = "29.0.0"
dependencies = [
"array-bytes 6.1.0",
+ "async-trait",
"bytes",
"fnv",
"futures",
@@ -16223,23 +17270,24 @@ dependencies = [
"once_cell",
"parity-scale-codec",
"parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
"sc-block-builder",
"sc-client-api",
"sc-client-db",
"sc-network",
"sc-network-common",
+ "sc-network-types",
"sc-transaction-pool",
"sc-transaction-pool-api",
"sc-utils",
"sp-api",
"sp-consensus",
"sp-core",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
"sp-keystore",
"sp-offchain",
"sp-runtime",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"substrate-test-runtime-client",
"threadpool",
"tokio",
@@ -16248,7 +17296,7 @@ dependencies = [
[[package]]
name = "sc-proposer-metrics"
-version = "0.10.0-dev"
+version = "0.17.0"
dependencies = [
"log",
"substrate-prometheus-endpoint",
@@ -16256,10 +17304,10 @@ dependencies = [
[[package]]
name = "sc-rpc"
-version = "4.0.0-dev"
+version = "29.0.0"
dependencies = [
"assert_matches",
- "env_logger 0.9.3",
+ "env_logger 0.11.3",
"futures",
"jsonrpsee",
"log",
@@ -16298,7 +17346,7 @@ dependencies = [
[[package]]
name = "sc-rpc-api"
-version = "0.10.0-dev"
+version = "0.33.0"
dependencies = [
"jsonrpsee",
"parity-scale-codec",
@@ -16317,9 +17365,12 @@ dependencies = [
[[package]]
name = "sc-rpc-server"
-version = "4.0.0-dev"
+version = "11.0.0"
dependencies = [
+ "futures",
+ "governor",
"http",
+ "hyper",
"jsonrpsee",
"log",
"serde_json",
@@ -16331,7 +17382,7 @@ dependencies = [
[[package]]
name = "sc-rpc-spec-v2"
-version = "0.10.0-dev"
+version = "0.34.0"
dependencies = [
"array-bytes 6.1.0",
"assert_matches",
@@ -16343,11 +17394,13 @@ dependencies = [
"parity-scale-codec",
"parking_lot 0.12.1",
"pretty_assertions",
+ "rand 0.8.5",
"sc-block-builder",
"sc-chain-spec",
"sc-client-api",
"sc-rpc",
"sc-service",
+ "sc-transaction-pool",
"sc-transaction-pool-api",
"sc-utils",
"serde",
@@ -16356,13 +17409,14 @@ dependencies = [
"sp-blockchain",
"sp-consensus",
"sp-core",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
"sp-maybe-compressed-blob",
"sp-rpc",
"sp-runtime",
"sp-version",
"substrate-test-runtime",
"substrate-test-runtime-client",
+ "substrate-test-runtime-transaction-pool",
"thiserror",
"tokio",
"tokio-stream",
@@ -16375,14 +17429,14 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-runtime-interface 17.0.0",
- "sp-std 8.0.0",
+ "sp-runtime-interface 24.0.0",
+ "sp-std 14.0.0",
"substrate-wasm-builder",
]
[[package]]
name = "sc-service"
-version = "0.10.0-dev"
+version = "0.35.0"
dependencies = [
"async-trait",
"directories",
@@ -16394,7 +17448,7 @@ dependencies = [
"parity-scale-codec",
"parking_lot 0.12.1",
"pin-project",
- "rand",
+ "rand 0.8.5",
"sc-chain-spec",
"sc-client-api",
"sc-client-db",
@@ -16403,11 +17457,11 @@ dependencies = [
"sc-informant",
"sc-keystore",
"sc-network",
- "sc-network-bitswap",
"sc-network-common",
"sc-network-light",
"sc-network-sync",
"sc-network-transactions",
+ "sc-network-types",
"sc-rpc",
"sc-rpc-server",
"sc-rpc-spec-v2",
@@ -16417,23 +17471,24 @@ dependencies = [
"sc-transaction-pool",
"sc-transaction-pool-api",
"sc-utils",
+ "schnellru",
"serde",
"serde_json",
"sp-api",
"sp-blockchain",
"sp-consensus",
"sp-core",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
"sp-keystore",
"sp-runtime",
"sp-session",
"sp-state-machine",
- "sp-storage 13.0.0",
+ "sp-storage 19.0.0",
"sp-transaction-pool",
"sp-transaction-storage-proof",
"sp-trie",
"sp-version",
- "static_init 1.0.3",
+ "static_init",
"substrate-prometheus-endpoint",
"substrate-test-runtime",
"substrate-test-runtime-client",
@@ -16471,8 +17526,8 @@ dependencies = [
"sp-io",
"sp-runtime",
"sp-state-machine",
- "sp-storage 13.0.0",
- "sp-tracing 10.0.0",
+ "sp-storage 19.0.0",
+ "sp-tracing 16.0.0",
"sp-trie",
"substrate-test-runtime",
"substrate-test-runtime-client",
@@ -16482,7 +17537,7 @@ dependencies = [
[[package]]
name = "sc-state-db"
-version = "0.10.0-dev"
+version = "0.30.0"
dependencies = [
"log",
"parity-scale-codec",
@@ -16492,9 +17547,9 @@ dependencies = [
[[package]]
name = "sc-statement-store"
-version = "4.0.0-dev"
+version = "10.0.0"
dependencies = [
- "env_logger 0.9.3",
+ "env_logger 0.11.3",
"log",
"parity-db",
"parking_lot 0.12.1",
@@ -16512,9 +17567,9 @@ dependencies = [
[[package]]
name = "sc-storage-monitor"
-version = "0.1.0"
+version = "0.16.0"
dependencies = [
- "clap 4.4.18",
+ "clap 4.5.3",
"fs4",
"log",
"sp-core",
@@ -16524,7 +17579,7 @@ dependencies = [
[[package]]
name = "sc-sync-state-rpc"
-version = "0.10.0-dev"
+version = "0.34.0"
dependencies = [
"jsonrpsee",
"parity-scale-codec",
@@ -16542,13 +17597,13 @@ dependencies = [
[[package]]
name = "sc-sysinfo"
-version = "6.0.0-dev"
+version = "27.0.0"
dependencies = [
"derive_more",
"futures",
"libc",
"log",
- "rand",
+ "rand 0.8.5",
"rand_pcg",
"regex",
"sc-telemetry",
@@ -16558,12 +17613,12 @@ dependencies = [
"sp-crypto-hashing",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "sc-telemetry"
-version = "4.0.0-dev"
+version = "15.0.0"
dependencies = [
"chrono",
"futures",
@@ -16571,7 +17626,8 @@ dependencies = [
"log",
"parking_lot 0.12.1",
"pin-project",
- "rand",
+ "rand 0.8.5",
+ "sc-network",
"sc-utils",
"serde",
"serde_json",
@@ -16581,7 +17637,7 @@ dependencies = [
[[package]]
name = "sc-tracing"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"ansi_term",
"chrono",
@@ -16602,26 +17658,26 @@ dependencies = [
"sp-core",
"sp-rpc",
"sp-runtime",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"thiserror",
"tracing",
"tracing-log 0.1.3",
- "tracing-subscriber 0.2.25",
+ "tracing-subscriber 0.3.18",
]
[[package]]
name = "sc-tracing-proc-macro"
-version = "4.0.0-dev"
+version = "11.0.0"
dependencies = [
"proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
name = "sc-transaction-pool"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"array-bytes 6.1.0",
"assert_matches",
@@ -16644,7 +17700,7 @@ dependencies = [
"sp-core",
"sp-crypto-hashing",
"sp-runtime",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"sp-transaction-pool",
"substrate-prometheus-endpoint",
"substrate-test-runtime",
@@ -16655,7 +17711,7 @@ dependencies = [
[[package]]
name = "sc-transaction-pool-api"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"async-trait",
"futures",
@@ -16671,7 +17727,7 @@ dependencies = [
[[package]]
name = "sc-utils"
-version = "4.0.0-dev"
+version = "14.0.0"
dependencies = [
"async-channel",
"futures",
@@ -16686,9 +17742,9 @@ dependencies = [
[[package]]
name = "scale-info"
-version = "2.10.0"
+version = "2.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f7d66a1128282b7ef025a8ead62a4a9fcf017382ec53b8ffbf4d7bf77bd3c60"
+checksum = "788745a868b0e751750388f4e6546eb921ef714a4317fa6954f7cde114eb2eb7"
dependencies = [
"bitvec",
"cfg-if",
@@ -16700,13 +17756,13 @@ dependencies = [
[[package]]
name = "scale-info-derive"
-version = "2.10.0"
+version = "2.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "abf2c68b89cafb3b8d918dd07b42be0da66ff202cf1155c5739a4e0c1ea0dc19"
+checksum = "7dc2f4e8bc344b9fc3d5f74f72c2e55bfc38d28dc2ebc69c194a3df424e4d9ac"
dependencies = [
"proc-macro-crate 1.3.1",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -16737,8 +17793,8 @@ version = "0.8.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ec0f696e21e10fa546b7ffb1c9672c6de8fbc7a81acf59524386d8639bf12737"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"serde_derive_internals",
"syn 1.0.109",
]
@@ -16749,27 +17805,11 @@ version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "772575a524feeb803e5b0fcbc6dd9f367e579488197c94c6e4023aad2305774d"
dependencies = [
- "ahash 0.8.7",
+ "ahash 0.8.8",
"cfg-if",
"hashbrown 0.13.2",
]
-[[package]]
-name = "schnorrkel"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "021b403afe70d81eea68f6ea12f6b3c9588e5d536a94c3bf80f15e7faa267862"
-dependencies = [
- "arrayref",
- "arrayvec 0.5.2",
- "curve25519-dalek 2.1.3",
- "merlin 2.0.1",
- "rand_core 0.5.1",
- "sha2 0.8.2",
- "subtle 2.4.1",
- "zeroize",
-]
-
[[package]]
name = "schnorrkel"
version = "0.10.2"
@@ -16779,7 +17819,7 @@ dependencies = [
"arrayref",
"arrayvec 0.7.4",
"curve25519-dalek-ng",
- "merlin 3.0.0",
+ "merlin",
"rand_core 0.6.4",
"sha2 0.9.9",
"subtle-ng",
@@ -16795,13 +17835,13 @@ dependencies = [
"aead 0.5.2",
"arrayref",
"arrayvec 0.7.4",
- "curve25519-dalek 4.1.1",
+ "curve25519-dalek 4.1.2",
"getrandom_or_panic",
- "merlin 3.0.0",
+ "merlin",
"rand_core 0.6.4",
"serde_bytes",
"sha2 0.10.7",
- "subtle 2.4.1",
+ "subtle 2.5.0",
"zeroize",
]
@@ -16833,6 +17873,21 @@ dependencies = [
"untrusted 0.7.1",
]
+[[package]]
+name = "sctp-proto"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f64cef148d3295c730c3cb340b0b252a4d570b1c7d4bf0808f88540b0a888bc"
+dependencies = [
+ "bytes",
+ "crc",
+ "fxhash",
+ "log",
+ "rand 0.8.5",
+ "slab",
+ "thiserror",
+]
+
[[package]]
name = "sec1"
version = "0.7.3"
@@ -16843,7 +17898,8 @@ dependencies = [
"der",
"generic-array 0.14.7",
"pkcs8",
- "subtle 2.4.1",
+ "serdect",
+ "subtle 2.5.0",
"zeroize",
]
@@ -16908,7 +17964,7 @@ dependencies = [
[[package]]
name = "seedling-runtime"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"cumulus-pallet-aura-ext",
"cumulus-pallet-parachain-system",
@@ -16934,7 +17990,7 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-transaction-pool",
"sp-version",
"staging-parachain-info",
@@ -17000,9 +18056,9 @@ checksum = "f97841a747eef040fcd2e7b3b9a220a7205926e60488e673d9e4926d27772ce5"
[[package]]
name = "serde"
-version = "1.0.195"
+version = "1.0.197"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "63261df402c67811e9ac6def069e4786148c4563f4b50fd4bf30aa370d626b02"
+checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
dependencies = [
"serde_derive",
]
@@ -17027,13 +18083,13 @@ dependencies = [
[[package]]
name = "serde_derive"
-version = "1.0.195"
+version = "1.0.197"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46fe8f8603d81ba86327b23a2e9cdf49e1255fb94a4c5f297f6ee0547178ea2c"
+checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -17042,8 +18098,8 @@ version = "0.26.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "85bf8229e7920a9f636479437026331ce11aa132b4dde37d121944a44d6e5f3c"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -17058,10 +18114,11 @@ dependencies = [
[[package]]
name = "serde_json"
-version = "1.0.111"
+version = "1.0.114"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "176e46fa42316f18edd598015a5166857fc835ec732f5215eac6b7bdbf0a84f4"
+checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0"
dependencies = [
+ "indexmap 2.2.3",
"itoa",
"ryu",
"serde",
@@ -17090,17 +18147,27 @@ dependencies = [
[[package]]
name = "serde_yaml"
-version = "0.9.30"
+version = "0.9.33"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1bf28c79a99f70ee1f1d83d10c875d2e70618417fda01ad1785e027579d9d38"
+checksum = "a0623d197252096520c6f2a5e1171ee436e5af99a5d7caa2891e55e61950e6d9"
dependencies = [
- "indexmap 2.0.0",
+ "indexmap 2.2.3",
"itoa",
"ryu",
"serde",
"unsafe-libyaml",
]
+[[package]]
+name = "serdect"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a84f14a19e9a014bb9f4512488d9829a68e04ecabffb0f9904cd1ace94598177"
+dependencies = [
+ "base16ct",
+ "serde",
+]
+
[[package]]
name = "serial_test"
version = "2.0.0"
@@ -17121,9 +18188,9 @@ version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "91d129178576168c589c9ec973feedf7d3126c01ac2bf08795109aa35b69fb8f"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -17148,13 +18215,14 @@ dependencies = [
"cfg-if",
"cpufeatures",
"digest 0.10.7",
+ "sha1-asm",
]
[[package]]
name = "sha1"
-version = "0.10.5"
+version = "0.10.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f04293dc80c3993519f2d7f6f511707ee7094fe0c6d3406feb330cdb3540eba3"
+checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba"
dependencies = [
"cfg-if",
"cpufeatures",
@@ -17162,15 +18230,12 @@ dependencies = [
]
[[package]]
-name = "sha2"
-version = "0.8.2"
+name = "sha1-asm"
+version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a256f46ea78a0c0d9ff00077504903ac881a1dafdc20da66545699e7776b3e69"
+checksum = "2ba6947745e7f86be3b8af00b7355857085dbdf8901393c89514510eb61f4e21"
dependencies = [
- "block-buffer 0.7.3",
- "digest 0.8.1",
- "fake-simd",
- "opaque-debug 0.2.3",
+ "cc",
]
[[package]]
@@ -17218,7 +18283,7 @@ dependencies = [
[[package]]
name = "shell-runtime"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"cumulus-pallet-aura-ext",
"cumulus-pallet-parachain-system",
@@ -17243,7 +18308,7 @@ dependencies = [
"sp-offchain",
"sp-runtime",
"sp-session",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-transaction-pool",
"sp-version",
"staging-parachain-info",
@@ -17278,6 +18343,12 @@ dependencies = [
"libc",
]
+[[package]]
+name = "signature"
+version = "1.6.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c"
+
[[package]]
name = "signature"
version = "2.1.0"
@@ -17301,10 +18372,20 @@ dependencies = [
"wide",
]
+[[package]]
+name = "simple-dns"
+version = "0.5.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cae9a3fcdadafb6d97f4c0e007e4247b114ee0f119f650c3cbf3a8b3a1479694"
+dependencies = [
+ "bitflags 2.4.0",
+]
+
[[package]]
name = "simple-mermaid"
-version = "0.1.0"
-source = "git+https://github.com/kianenigma/simple-mermaid.git?rev=e48b187bcfd5cc75111acd9d241f1bd36604344b#e48b187bcfd5cc75111acd9d241f1bd36604344b"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "620a1d43d70e142b1d46a929af51d44f383db9c7a2ec122de2cd992ccfcf3c18"
[[package]]
name = "siphasher"
@@ -17329,13 +18410,13 @@ checksum = "826167069c09b99d56f31e9ae5c99049e932a98c9dc2dac47645b08dbbf76ba7"
[[package]]
name = "slot-range-helper"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"enumn",
"parity-scale-codec",
"paste",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
@@ -17347,6 +18428,17 @@ dependencies = [
"version_check",
]
+[[package]]
+name = "sluice"
+version = "0.5.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d7400c0eff44aa2fcb5e31a5f24ba9716ed90138769e4977a2ba6014ae63eb5"
+dependencies = [
+ "async-channel",
+ "futures-core",
+ "futures-io",
+]
+
[[package]]
name = "smallvec"
version = "1.11.2"
@@ -17363,7 +18455,7 @@ dependencies = [
"async-executor",
"async-fs",
"async-io",
- "async-lock",
+ "async-lock 2.8.0",
"async-net",
"async-process",
"blocking",
@@ -17386,7 +18478,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c0bb30cf57b7b5f6109ce17c3164445e2d6f270af2cb48f6e4d31c2967c9a9f5"
dependencies = [
"arrayvec 0.7.4",
- "async-lock",
+ "async-lock 2.8.0",
"atomic-take",
"base64 0.21.2",
"bip39",
@@ -17397,7 +18489,7 @@ dependencies = [
"derive_more",
"ed25519-zebra 4.0.3",
"either",
- "event-listener",
+ "event-listener 2.5.3",
"fnv",
"futures-lite",
"futures-util",
@@ -17406,16 +18498,16 @@ dependencies = [
"hmac 0.12.1",
"itertools 0.11.0",
"libsecp256k1",
- "merlin 3.0.0",
+ "merlin",
"no-std-net",
"nom",
"num-bigint",
"num-rational",
"num-traits",
- "pbkdf2 0.12.2",
+ "pbkdf2",
"pin-project",
"poly1305 0.8.0",
- "rand",
+ "rand 0.8.5",
"rand_chacha 0.3.1",
"ruzstd",
"schnorrkel 0.10.2",
@@ -17440,12 +18532,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "256b5bad1d6b49045e95fe87492ce73d5af81545d8b4d8318a872d2007024c33"
dependencies = [
"async-channel",
- "async-lock",
+ "async-lock 2.8.0",
"base64 0.21.2",
"blake2-rfc",
"derive_more",
"either",
- "event-listener",
+ "event-listener 2.5.3",
"fnv",
"futures-channel",
"futures-lite",
@@ -17458,7 +18550,7 @@ dependencies = [
"no-std-net",
"parking_lot 0.12.1",
"pin-project",
- "rand",
+ "rand 0.8.5",
"rand_chacha 0.3.1",
"serde",
"serde_json",
@@ -17481,44 +18573,52 @@ version = "0.9.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0c9d1425eb528a21de2755c75af4c9b5d57f50a0d4c3b7f1828a4cd03f8ba155"
dependencies = [
- "aes-gcm 0.9.4",
+ "aes-gcm 0.9.2",
"blake2 0.10.6",
"chacha20poly1305",
- "curve25519-dalek 4.1.1",
+ "curve25519-dalek 4.1.2",
"rand_core 0.6.4",
"ring 0.16.20",
"rustc_version 0.4.0",
"sha2 0.10.7",
- "subtle 2.4.1",
+ "subtle 2.5.0",
+]
+
+[[package]]
+name = "snowbridge-amcl"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "460a9ed63cdf03c1b9847e8a12a5f5ba19c4efd5869e4a737e05be25d7c427e5"
+dependencies = [
+ "parity-scale-codec",
+ "scale-info",
]
[[package]]
name = "snowbridge-beacon-primitives"
-version = "0.9.0"
+version = "0.2.0"
dependencies = [
"byte-slice-cast",
"frame-support",
- "frame-system",
"hex",
"hex-literal",
- "milagro_bls",
"parity-scale-codec",
"rlp",
"scale-info",
"serde",
"snowbridge-ethereum",
+ "snowbridge-milagro-bls",
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"ssz_rs",
"ssz_rs_derive",
- "static_assertions",
]
[[package]]
name = "snowbridge-core"
-version = "0.9.0"
+version = "0.2.0"
dependencies = [
"ethabi-decode",
"frame-support",
@@ -17534,14 +18634,14 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
"staging-xcm-builder",
]
[[package]]
name = "snowbridge-ethereum"
-version = "0.9.0"
+version = "0.3.0"
dependencies = [
"ethabi-decode",
"ethbloom",
@@ -17549,26 +18649,39 @@ dependencies = [
"hex-literal",
"parity-bytes",
"parity-scale-codec",
- "rand",
+ "rand 0.8.5",
"rlp",
- "rustc-hex",
"scale-info",
"serde",
"serde-big-array",
"serde_json",
- "sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"wasm-bindgen-test",
]
+[[package]]
+name = "snowbridge-milagro-bls"
+version = "1.5.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "026aa8638f690a53e3f7676024b9e913b1cab0111d1b7b92669d40a188f9d7e6"
+dependencies = [
+ "hex",
+ "lazy_static",
+ "parity-scale-codec",
+ "rand 0.8.5",
+ "scale-info",
+ "snowbridge-amcl",
+ "zeroize",
+]
+
[[package]]
name = "snowbridge-outbound-queue-merkle-tree"
-version = "0.9.0"
+version = "0.3.0"
dependencies = [
"array-bytes 4.2.0",
- "env_logger 0.9.3",
+ "env_logger 0.11.3",
"hex",
"hex-literal",
"parity-scale-codec",
@@ -17580,24 +18693,20 @@ dependencies = [
[[package]]
name = "snowbridge-outbound-queue-runtime-api"
-version = "0.9.0"
+version = "0.2.0"
dependencies = [
"frame-support",
"parity-scale-codec",
"snowbridge-core",
"snowbridge-outbound-queue-merkle-tree",
"sp-api",
- "sp-core",
- "sp-std 8.0.0",
- "staging-xcm",
+ "sp-std 14.0.0",
]
[[package]]
name = "snowbridge-pallet-ethereum-client"
-version = "0.9.0"
+version = "0.2.0"
dependencies = [
- "bp-runtime",
- "byte-slice-cast",
"frame-benchmarking",
"frame-support",
"frame-system",
@@ -17605,66 +18714,82 @@ dependencies = [
"log",
"pallet-timestamp",
"parity-scale-codec",
- "rand",
- "rlp",
+ "rand 0.8.5",
"scale-info",
"serde",
"serde_json",
"snowbridge-beacon-primitives",
"snowbridge-core",
"snowbridge-ethereum",
+ "snowbridge-pallet-ethereum-client-fixtures",
"sp-core",
"sp-io",
"sp-keyring",
"sp-runtime",
- "sp-std 8.0.0",
- "ssz_rs",
- "ssz_rs_derive",
+ "sp-std 14.0.0",
"static_assertions",
]
[[package]]
-name = "snowbridge-pallet-inbound-queue"
+name = "snowbridge-pallet-ethereum-client-fixtures"
version = "0.9.0"
+dependencies = [
+ "hex-literal",
+ "snowbridge-beacon-primitives",
+ "snowbridge-core",
+ "sp-core",
+ "sp-std 14.0.0",
+]
+
+[[package]]
+name = "snowbridge-pallet-inbound-queue"
+version = "0.2.0"
dependencies = [
"alloy-primitives",
- "alloy-rlp",
"alloy-sol-types",
"frame-benchmarking",
"frame-support",
"frame-system",
"hex-literal",
"log",
- "num-traits",
"pallet-balances",
"parity-scale-codec",
"scale-info",
"serde",
"snowbridge-beacon-primitives",
"snowbridge-core",
- "snowbridge-ethereum",
"snowbridge-pallet-ethereum-client",
+ "snowbridge-pallet-inbound-queue-fixtures",
"snowbridge-router-primitives",
"sp-core",
"sp-io",
"sp-keyring",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
- "staging-xcm-builder",
"staging-xcm-executor",
]
+[[package]]
+name = "snowbridge-pallet-inbound-queue-fixtures"
+version = "0.10.0"
+dependencies = [
+ "hex-literal",
+ "snowbridge-beacon-primitives",
+ "snowbridge-core",
+ "sp-core",
+ "sp-std 14.0.0",
+]
+
[[package]]
name = "snowbridge-pallet-outbound-queue"
-version = "0.9.0"
+version = "0.2.0"
dependencies = [
"bridge-hub-common",
"ethabi-decode",
"frame-benchmarking",
"frame-support",
"frame-system",
- "hex-literal",
"pallet-message-queue",
"parity-scale-codec",
"scale-info",
@@ -17676,15 +18801,13 @@ dependencies = [
"sp-io",
"sp-keyring",
"sp-runtime",
- "sp-std 8.0.0",
- "staging-xcm",
+ "sp-std 14.0.0",
]
[[package]]
name = "snowbridge-pallet-system"
-version = "0.9.0"
+version = "0.2.0"
dependencies = [
- "ethabi-decode",
"frame-benchmarking",
"frame-support",
"frame-system",
@@ -17702,9 +18825,8 @@ dependencies = [
"sp-io",
"sp-keyring",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
- "staging-xcm-builder",
"staging-xcm-executor",
]
@@ -17712,34 +18834,31 @@ dependencies = [
name = "snowbridge-router-primitives"
version = "0.9.0"
dependencies = [
- "ethabi-decode",
"frame-support",
- "frame-system",
"hex-literal",
"log",
"parity-scale-codec",
"rustc-hex",
"scale-info",
- "serde",
"snowbridge-core",
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
- "staging-xcm-builder",
"staging-xcm-executor",
]
[[package]]
name = "snowbridge-runtime-common"
-version = "0.9.0"
+version = "0.2.0"
dependencies = [
"frame-support",
- "frame-system",
"log",
+ "parity-scale-codec",
"snowbridge-core",
"sp-arithmetic",
+ "sp-std 14.0.0",
"staging-xcm",
"staging-xcm-builder",
"staging-xcm-executor",
@@ -17747,89 +18866,42 @@ dependencies = [
[[package]]
name = "snowbridge-runtime-test-common"
-version = "0.9.0"
+version = "0.2.0"
dependencies = [
- "assets-common",
- "bridge-hub-test-utils",
- "bridge-runtime-common",
- "cumulus-pallet-aura-ext",
"cumulus-pallet-parachain-system",
- "cumulus-pallet-session-benchmarking",
- "cumulus-pallet-xcm",
- "cumulus-pallet-xcmp-queue",
- "cumulus-primitives-core",
- "cumulus-primitives-utility",
- "frame-benchmarking",
- "frame-executive",
"frame-support",
"frame-system",
- "frame-system-benchmarking",
- "frame-system-rpc-runtime-api",
- "frame-try-runtime",
- "hex-literal",
- "log",
- "pallet-aura",
- "pallet-authorship",
"pallet-balances",
"pallet-collator-selection",
"pallet-message-queue",
- "pallet-multisig",
"pallet-session",
"pallet-timestamp",
- "pallet-transaction-payment",
- "pallet-transaction-payment-rpc-runtime-api",
"pallet-utility",
"pallet-xcm",
- "pallet-xcm-benchmarks",
- "parachains-common",
"parachains-runtimes-test-utils",
"parity-scale-codec",
- "polkadot-core-primitives",
- "polkadot-parachain-primitives",
- "polkadot-runtime-common",
- "scale-info",
- "serde",
- "smallvec",
- "snowbridge-beacon-primitives",
"snowbridge-core",
- "snowbridge-outbound-queue-runtime-api",
"snowbridge-pallet-ethereum-client",
- "snowbridge-pallet-inbound-queue",
+ "snowbridge-pallet-ethereum-client-fixtures",
"snowbridge-pallet-outbound-queue",
"snowbridge-pallet-system",
- "snowbridge-router-primitives",
- "snowbridge-system-runtime-api",
- "sp-api",
- "sp-block-builder",
- "sp-consensus-aura",
"sp-core",
- "sp-genesis-builder",
- "sp-inherents",
"sp-io",
"sp-keyring",
- "sp-offchain",
"sp-runtime",
- "sp-session",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
- "sp-transaction-pool",
- "sp-version",
"staging-parachain-info",
"staging-xcm",
- "staging-xcm-builder",
"staging-xcm-executor",
- "static_assertions",
]
[[package]]
name = "snowbridge-system-runtime-api"
-version = "0.9.0"
+version = "0.2.0"
dependencies = [
"parity-scale-codec",
"snowbridge-core",
"sp-api",
- "sp-core",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
]
@@ -17845,12 +18917,12 @@ dependencies = [
[[package]]
name = "socket2"
-version = "0.5.3"
+version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877"
+checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871"
dependencies = [
"libc",
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
]
[[package]]
@@ -17866,25 +18938,106 @@ dependencies = [
"http",
"httparse",
"log",
- "rand",
+ "rand 0.8.5",
"sha-1 0.9.8",
]
[[package]]
-name = "sp-api"
-version = "4.0.0-dev"
+name = "solochain-template-node"
+version = "0.0.0"
dependencies = [
- "hash-db",
- "log",
- "parity-scale-codec",
- "scale-info",
- "sp-api-proc-macro",
- "sp-core",
- "sp-externalities 0.19.0",
- "sp-metadata-ir",
+ "clap 4.5.3",
+ "frame-benchmarking-cli",
+ "frame-system",
+ "futures",
+ "jsonrpsee",
+ "pallet-transaction-payment",
+ "pallet-transaction-payment-rpc",
+ "sc-basic-authorship",
+ "sc-cli",
+ "sc-client-api",
+ "sc-consensus",
+ "sc-consensus-aura",
+ "sc-consensus-grandpa",
+ "sc-executor",
+ "sc-network",
+ "sc-offchain",
+ "sc-rpc-api",
+ "sc-service",
+ "sc-telemetry",
+ "sc-transaction-pool",
+ "sc-transaction-pool-api",
+ "serde_json",
+ "solochain-template-runtime",
+ "sp-api",
+ "sp-block-builder",
+ "sp-blockchain",
+ "sp-consensus-aura",
+ "sp-consensus-grandpa",
+ "sp-core",
+ "sp-inherents",
+ "sp-io",
+ "sp-keyring",
+ "sp-runtime",
+ "sp-timestamp",
+ "substrate-build-script-utils",
+ "substrate-frame-rpc-system",
+]
+
+[[package]]
+name = "solochain-template-runtime"
+version = "0.0.0"
+dependencies = [
+ "frame-benchmarking",
+ "frame-executive",
+ "frame-support",
+ "frame-system",
+ "frame-system-benchmarking",
+ "frame-system-rpc-runtime-api",
+ "frame-try-runtime",
+ "pallet-aura",
+ "pallet-balances",
+ "pallet-grandpa",
+ "pallet-sudo",
+ "pallet-template",
+ "pallet-timestamp",
+ "pallet-transaction-payment",
+ "pallet-transaction-payment-rpc-runtime-api",
+ "parity-scale-codec",
+ "scale-info",
+ "sp-api",
+ "sp-block-builder",
+ "sp-consensus-aura",
+ "sp-consensus-grandpa",
+ "sp-core",
+ "sp-genesis-builder",
+ "sp-inherents",
+ "sp-offchain",
+ "sp-runtime",
+ "sp-session",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
+ "sp-transaction-pool",
+ "sp-version",
+ "substrate-wasm-builder",
+]
+
+[[package]]
+name = "sp-api"
+version = "26.0.0"
+dependencies = [
+ "hash-db",
+ "log",
+ "parity-scale-codec",
+ "scale-info",
+ "sp-api-proc-macro",
+ "sp-core",
+ "sp-externalities 0.25.0",
+ "sp-metadata-ir",
"sp-runtime",
+ "sp-runtime-interface 24.0.0",
"sp-state-machine",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-test-primitives",
"sp-trie",
"sp-version",
@@ -17893,16 +19046,16 @@ dependencies = [
[[package]]
name = "sp-api-proc-macro"
-version = "4.0.0-dev"
+version = "15.0.0"
dependencies = [
"Inflector",
"assert_matches",
"blake2 0.10.6",
"expander 2.0.0",
"proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -17921,7 +19074,7 @@ dependencies = [
"sp-core",
"sp-runtime",
"sp-state-machine",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"sp-version",
"static_assertions",
"substrate-test-runtime-client",
@@ -17930,14 +19083,14 @@ dependencies = [
[[package]]
name = "sp-application-crypto"
-version = "23.0.0"
+version = "30.0.0"
dependencies = [
"parity-scale-codec",
"scale-info",
"serde",
"sp-core",
"sp-io",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
@@ -17953,18 +19106,19 @@ dependencies = [
[[package]]
name = "sp-arithmetic"
-version = "16.0.0"
+version = "23.0.0"
dependencies = [
"criterion 0.4.0",
+ "docify",
"integer-sqrt",
"num-traits",
"parity-scale-codec",
"primitive-types",
- "rand",
+ "rand 0.8.5",
"scale-info",
"serde",
"sp-crypto-hashing",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"static_assertions",
]
@@ -17985,7 +19139,7 @@ version = "0.4.2"
source = "git+https://github.com/paritytech/arkworks-substrate#caa2eed74beb885dd07c7db5f916f2281dad818f"
dependencies = [
"ark-bls12-381-ext",
- "sp-crypto-ec-utils 0.4.1 (git+https://github.com/paritytech/polkadot-sdk)",
+ "sp-crypto-ec-utils 0.4.1",
]
[[package]]
@@ -17994,34 +19148,32 @@ version = "0.4.2"
source = "git+https://github.com/paritytech/arkworks-substrate#caa2eed74beb885dd07c7db5f916f2281dad818f"
dependencies = [
"ark-ed-on-bls12-381-bandersnatch-ext",
- "sp-crypto-ec-utils 0.4.1 (git+https://github.com/paritytech/polkadot-sdk)",
+ "sp-crypto-ec-utils 0.4.1",
]
[[package]]
name = "sp-authority-discovery"
-version = "4.0.0-dev"
+version = "26.0.0"
dependencies = [
"parity-scale-codec",
"scale-info",
"sp-api",
"sp-application-crypto",
"sp-runtime",
- "sp-std 8.0.0",
]
[[package]]
name = "sp-block-builder"
-version = "4.0.0-dev"
+version = "26.0.0"
dependencies = [
"sp-api",
"sp-inherents",
"sp-runtime",
- "sp-std 8.0.0",
]
[[package]]
name = "sp-blockchain"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"futures",
"log",
@@ -18038,7 +19190,7 @@ dependencies = [
[[package]]
name = "sp-consensus"
-version = "0.10.0-dev"
+version = "0.32.0"
dependencies = [
"async-trait",
"futures",
@@ -18053,7 +19205,7 @@ dependencies = [
[[package]]
name = "sp-consensus-aura"
-version = "0.10.0-dev"
+version = "0.32.0"
dependencies = [
"async-trait",
"parity-scale-codec",
@@ -18063,13 +19215,12 @@ dependencies = [
"sp-consensus-slots",
"sp-inherents",
"sp-runtime",
- "sp-std 8.0.0",
"sp-timestamp",
]
[[package]]
name = "sp-consensus-babe"
-version = "0.10.0-dev"
+version = "0.32.0"
dependencies = [
"async-trait",
"parity-scale-codec",
@@ -18081,13 +19232,12 @@ dependencies = [
"sp-core",
"sp-inherents",
"sp-runtime",
- "sp-std 8.0.0",
"sp-timestamp",
]
[[package]]
name = "sp-consensus-beefy"
-version = "4.0.0-dev"
+version = "13.0.0"
dependencies = [
"array-bytes 6.1.0",
"lazy_static",
@@ -18099,16 +19249,16 @@ dependencies = [
"sp-core",
"sp-crypto-hashing",
"sp-io",
+ "sp-keystore",
"sp-mmr-primitives",
"sp-runtime",
- "sp-std 8.0.0",
- "strum 0.24.1",
+ "strum 0.26.2",
"w3f-bls",
]
[[package]]
name = "sp-consensus-grandpa"
-version = "4.0.0-dev"
+version = "13.0.0"
dependencies = [
"finality-grandpa",
"log",
@@ -18120,18 +19270,16 @@ dependencies = [
"sp-core",
"sp-keystore",
"sp-runtime",
- "sp-std 8.0.0",
]
[[package]]
name = "sp-consensus-pow"
-version = "0.10.0-dev"
+version = "0.32.0"
dependencies = [
"parity-scale-codec",
"sp-api",
"sp-core",
"sp-runtime",
- "sp-std 8.0.0",
]
[[package]]
@@ -18146,27 +19294,24 @@ dependencies = [
"sp-consensus-slots",
"sp-core",
"sp-runtime",
- "sp-std 8.0.0",
]
[[package]]
name = "sp-consensus-slots"
-version = "0.10.0-dev"
+version = "0.32.0"
dependencies = [
"parity-scale-codec",
"scale-info",
"serde",
- "sp-std 8.0.0",
"sp-timestamp",
]
[[package]]
name = "sp-core"
-version = "21.0.0"
+version = "28.0.0"
dependencies = [
"array-bytes 6.1.0",
"bandersnatch_vrfs",
- "bip39",
"bitflags 1.3.2",
"blake2 0.10.6",
"bounded-collections",
@@ -18179,15 +19324,17 @@ dependencies = [
"hash256-std-hasher",
"impl-serde",
"itertools 0.10.5",
+ "k256",
"lazy_static",
"libsecp256k1",
"log",
- "merlin 3.0.0",
+ "merlin",
+ "parity-bip39",
"parity-scale-codec",
"parking_lot 0.12.1",
"paste",
"primitive-types",
- "rand",
+ "rand 0.8.5",
"regex",
"scale-info",
"schnorrkel 0.11.4",
@@ -18196,11 +19343,11 @@ dependencies = [
"serde",
"serde_json",
"sp-crypto-hashing",
- "sp-debug-derive 8.0.0",
- "sp-externalities 0.19.0",
- "sp-runtime-interface 17.0.0",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
+ "sp-debug-derive 14.0.0",
+ "sp-externalities 0.25.0",
+ "sp-runtime-interface 24.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
"ss58-registry",
"substrate-bip39",
"thiserror",
@@ -18236,6 +19383,7 @@ dependencies = [
[[package]]
name = "sp-crypto-ec-utils"
version = "0.4.1"
+source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
dependencies = [
"ark-bls12-377",
"ark-bls12-377-ext",
@@ -18248,15 +19396,14 @@ dependencies = [
"ark-ed-on-bls12-377-ext",
"ark-ed-on-bls12-381-bandersnatch",
"ark-ed-on-bls12-381-bandersnatch-ext",
- "ark-scale 0.0.12",
+ "ark-scale 0.0.11",
"sp-runtime-interface 17.0.0",
"sp-std 8.0.0",
]
[[package]]
name = "sp-crypto-ec-utils"
-version = "0.4.1"
-source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
+version = "0.10.0"
dependencies = [
"ark-bls12-377",
"ark-bls12-377-ext",
@@ -18269,9 +19416,8 @@ dependencies = [
"ark-ed-on-bls12-377-ext",
"ark-ed-on-bls12-381-bandersnatch",
"ark-ed-on-bls12-381-bandersnatch-ext",
- "ark-scale 0.0.11",
- "sp-runtime-interface 17.0.0 (git+https://github.com/paritytech/polkadot-sdk)",
- "sp-std 8.0.0 (git+https://github.com/paritytech/polkadot-sdk)",
+ "ark-scale 0.0.12",
+ "sp-runtime-interface 24.0.0",
]
[[package]]
@@ -18292,14 +19438,14 @@ dependencies = [
name = "sp-crypto-hashing-proc-macro"
version = "0.1.0"
dependencies = [
- "quote",
+ "quote 1.0.35",
"sp-crypto-hashing",
- "syn 2.0.48",
+ "syn 2.0.53",
]
[[package]]
name = "sp-database"
-version = "4.0.0-dev"
+version = "10.0.0"
dependencies = [
"kvdb",
"parking_lot 0.12.1",
@@ -18308,25 +19454,26 @@ dependencies = [
[[package]]
name = "sp-debug-derive"
version = "8.0.0"
+source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
name = "sp-debug-derive"
-version = "8.0.0"
-source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
+version = "14.0.0"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
name = "sp-externalities"
version = "0.19.0"
+source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
dependencies = [
"environmental",
"parity-scale-codec",
@@ -18336,28 +19483,27 @@ dependencies = [
[[package]]
name = "sp-externalities"
-version = "0.19.0"
-source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
+version = "0.25.0"
dependencies = [
"environmental",
"parity-scale-codec",
- "sp-std 8.0.0 (git+https://github.com/paritytech/polkadot-sdk)",
- "sp-storage 13.0.0 (git+https://github.com/paritytech/polkadot-sdk)",
+ "sp-storage 19.0.0",
]
[[package]]
name = "sp-genesis-builder"
-version = "0.1.0"
+version = "0.8.0"
dependencies = [
+ "parity-scale-codec",
+ "scale-info",
"serde_json",
"sp-api",
"sp-runtime",
- "sp-std 8.0.0",
]
[[package]]
name = "sp-inherents"
-version = "4.0.0-dev"
+version = "26.0.0"
dependencies = [
"async-trait",
"futures",
@@ -18365,29 +19511,29 @@ dependencies = [
"parity-scale-codec",
"scale-info",
"sp-runtime",
- "sp-std 8.0.0",
"thiserror",
]
[[package]]
name = "sp-io"
-version = "23.0.0"
+version = "30.0.0"
dependencies = [
"bytes",
- "ed25519-dalek",
+ "ed25519-dalek 2.1.0",
"libsecp256k1",
"log",
"parity-scale-codec",
+ "polkavm-derive",
"rustversion",
"secp256k1",
"sp-core",
"sp-crypto-hashing",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
"sp-keystore",
- "sp-runtime-interface 17.0.0",
+ "sp-runtime-interface 24.0.0",
"sp-state-machine",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"sp-trie",
"tracing",
"tracing-core",
@@ -18395,29 +19541,28 @@ dependencies = [
[[package]]
name = "sp-keyring"
-version = "24.0.0"
+version = "31.0.0"
dependencies = [
"sp-core",
"sp-runtime",
- "strum 0.24.1",
+ "strum 0.26.2",
]
[[package]]
name = "sp-keystore"
-version = "0.27.0"
+version = "0.34.0"
dependencies = [
"parity-scale-codec",
"parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
"rand_chacha 0.2.2",
"sp-core",
- "sp-externalities 0.19.0",
- "thiserror",
+ "sp-externalities 0.25.0",
]
[[package]]
name = "sp-maybe-compressed-blob"
-version = "4.1.0-dev"
+version = "11.0.0"
dependencies = [
"thiserror",
"zstd 0.12.4",
@@ -18425,28 +19570,26 @@ dependencies = [
[[package]]
name = "sp-metadata-ir"
-version = "0.1.0"
+version = "0.6.0"
dependencies = [
"frame-metadata",
"parity-scale-codec",
"scale-info",
- "sp-std 8.0.0",
]
[[package]]
name = "sp-mixnet"
-version = "0.1.0-dev"
+version = "0.4.0"
dependencies = [
"parity-scale-codec",
"scale-info",
"sp-api",
"sp-application-crypto",
- "sp-std 8.0.0",
]
[[package]]
name = "sp-mmr-primitives"
-version = "4.0.0-dev"
+version = "26.0.0"
dependencies = [
"array-bytes 6.1.0",
"ckb-merkle-mountain-range",
@@ -18456,24 +19599,22 @@ dependencies = [
"serde",
"sp-api",
"sp-core",
- "sp-debug-derive 8.0.0",
+ "sp-debug-derive 14.0.0",
"sp-runtime",
- "sp-std 8.0.0",
"thiserror",
]
[[package]]
name = "sp-npos-elections"
-version = "4.0.0-dev"
+version = "26.0.0"
dependencies = [
"parity-scale-codec",
- "rand",
+ "rand 0.8.5",
"scale-info",
"serde",
"sp-arithmetic",
"sp-core",
"sp-runtime",
- "sp-std 8.0.0",
"substrate-test-utils",
]
@@ -18481,16 +19622,16 @@ dependencies = [
name = "sp-npos-elections-fuzzer"
version = "2.0.0-alpha.5"
dependencies = [
- "clap 4.4.18",
+ "clap 4.5.3",
"honggfuzz",
- "rand",
+ "rand 0.8.5",
"sp-npos-elections",
"sp-runtime",
]
[[package]]
name = "sp-offchain"
-version = "4.0.0-dev"
+version = "26.0.0"
dependencies = [
"sp-api",
"sp-core",
@@ -18499,7 +19640,7 @@ dependencies = [
[[package]]
name = "sp-panic-handler"
-version = "8.0.0"
+version = "13.0.0"
dependencies = [
"backtrace",
"lazy_static",
@@ -18508,7 +19649,7 @@ dependencies = [
[[package]]
name = "sp-rpc"
-version = "6.0.0"
+version = "26.0.0"
dependencies = [
"rustc-hash",
"serde",
@@ -18518,7 +19659,7 @@ dependencies = [
[[package]]
name = "sp-runtime"
-version = "24.0.0"
+version = "31.0.1"
dependencies = [
"docify",
"either",
@@ -18527,7 +19668,7 @@ dependencies = [
"log",
"parity-scale-codec",
"paste",
- "rand",
+ "rand 0.8.5",
"scale-info",
"serde",
"serde_json",
@@ -18538,8 +19679,8 @@ dependencies = [
"sp-core",
"sp-io",
"sp-state-machine",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"sp-weights",
"substrate-test-runtime-client",
"zstd 0.12.4",
@@ -18548,66 +19689,67 @@ dependencies = [
[[package]]
name = "sp-runtime-interface"
version = "17.0.0"
+source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
dependencies = [
"bytes",
"impl-trait-for-tuples",
"parity-scale-codec",
"primitive-types",
- "rustversion",
- "sp-core",
"sp-externalities 0.19.0",
- "sp-io",
"sp-runtime-interface-proc-macro 11.0.0",
- "sp-runtime-interface-test-wasm",
- "sp-state-machine",
"sp-std 8.0.0",
"sp-storage 13.0.0",
"sp-tracing 10.0.0",
"sp-wasm-interface 14.0.0",
"static_assertions",
- "trybuild",
]
[[package]]
name = "sp-runtime-interface"
-version = "17.0.0"
-source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
+version = "24.0.0"
dependencies = [
"bytes",
"impl-trait-for-tuples",
"parity-scale-codec",
+ "polkavm-derive",
"primitive-types",
- "sp-externalities 0.19.0 (git+https://github.com/paritytech/polkadot-sdk)",
- "sp-runtime-interface-proc-macro 11.0.0 (git+https://github.com/paritytech/polkadot-sdk)",
- "sp-std 8.0.0 (git+https://github.com/paritytech/polkadot-sdk)",
- "sp-storage 13.0.0 (git+https://github.com/paritytech/polkadot-sdk)",
- "sp-tracing 10.0.0 (git+https://github.com/paritytech/polkadot-sdk)",
- "sp-wasm-interface 14.0.0 (git+https://github.com/paritytech/polkadot-sdk)",
+ "rustversion",
+ "sp-core",
+ "sp-externalities 0.25.0",
+ "sp-io",
+ "sp-runtime-interface-proc-macro 17.0.0",
+ "sp-runtime-interface-test-wasm",
+ "sp-state-machine",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
+ "sp-tracing 16.0.0",
+ "sp-wasm-interface 20.0.0",
"static_assertions",
+ "trybuild",
]
[[package]]
name = "sp-runtime-interface-proc-macro"
version = "11.0.0"
+source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
dependencies = [
"Inflector",
- "expander 2.0.0",
- "proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro-crate 1.3.1",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
name = "sp-runtime-interface-proc-macro"
-version = "11.0.0"
-source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
+version = "17.0.0"
dependencies = [
"Inflector",
- "proc-macro-crate 1.3.1",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "expander 2.0.0",
+ "proc-macro-crate 3.0.0",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -18618,7 +19760,7 @@ dependencies = [
"sc-executor-common",
"sp-io",
"sp-runtime",
- "sp-runtime-interface 17.0.0",
+ "sp-runtime-interface 24.0.0",
"sp-runtime-interface-test-wasm",
"sp-runtime-interface-test-wasm-deprecated",
"sp-state-machine",
@@ -18633,8 +19775,8 @@ dependencies = [
"bytes",
"sp-core",
"sp-io",
- "sp-runtime-interface 17.0.0",
- "sp-std 8.0.0",
+ "sp-runtime-interface 24.0.0",
+ "sp-std 14.0.0",
"substrate-wasm-builder",
]
@@ -18644,13 +19786,13 @@ version = "2.0.0"
dependencies = [
"sp-core",
"sp-io",
- "sp-runtime-interface 17.0.0",
+ "sp-runtime-interface 24.0.0",
"substrate-wasm-builder",
]
[[package]]
name = "sp-session"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"parity-scale-codec",
"scale-info",
@@ -18659,12 +19801,11 @@ dependencies = [
"sp-keystore",
"sp-runtime",
"sp-staking",
- "sp-std 8.0.0",
]
[[package]]
name = "sp-staking"
-version = "4.0.0-dev"
+version = "26.0.0"
dependencies = [
"impl-trait-for-tuples",
"parity-scale-codec",
@@ -18672,12 +19813,11 @@ dependencies = [
"serde",
"sp-core",
"sp-runtime",
- "sp-std 8.0.0",
]
[[package]]
name = "sp-state-machine"
-version = "0.28.0"
+version = "0.35.0"
dependencies = [
"array-bytes 6.1.0",
"assert_matches",
@@ -18686,13 +19826,12 @@ dependencies = [
"parity-scale-codec",
"parking_lot 0.12.1",
"pretty_assertions",
- "rand",
+ "rand 0.8.5",
"smallvec",
"sp-core",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
"sp-panic-handler",
"sp-runtime",
- "sp-std 8.0.0",
"sp-trie",
"thiserror",
"tracing",
@@ -18701,24 +19840,23 @@ dependencies = [
[[package]]
name = "sp-statement-store"
-version = "4.0.0-dev"
+version = "10.0.0"
dependencies = [
"aes-gcm 0.10.3",
- "curve25519-dalek 4.1.1",
- "ed25519-dalek",
+ "curve25519-dalek 4.1.2",
+ "ed25519-dalek 2.1.0",
"hkdf",
"parity-scale-codec",
- "rand",
+ "rand 0.8.5",
"scale-info",
"sha2 0.10.7",
"sp-api",
"sp-application-crypto",
"sp-core",
"sp-crypto-hashing",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
"sp-runtime",
- "sp-runtime-interface 17.0.0",
- "sp-std 8.0.0",
+ "sp-runtime-interface 24.0.0",
"thiserror",
"x25519-dalek 2.0.0",
]
@@ -18726,15 +19864,16 @@ dependencies = [
[[package]]
name = "sp-std"
version = "8.0.0"
+source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
[[package]]
name = "sp-std"
-version = "8.0.0"
-source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
+version = "14.0.0"
[[package]]
name = "sp-storage"
version = "13.0.0"
+source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
dependencies = [
"impl-serde",
"parity-scale-codec",
@@ -18746,15 +19885,13 @@ dependencies = [
[[package]]
name = "sp-storage"
-version = "13.0.0"
-source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
+version = "19.0.0"
dependencies = [
"impl-serde",
"parity-scale-codec",
"ref-cast",
"serde",
- "sp-debug-derive 8.0.0 (git+https://github.com/paritytech/polkadot-sdk)",
- "sp-std 8.0.0 (git+https://github.com/paritytech/polkadot-sdk)",
+ "sp-debug-derive 14.0.0",
]
[[package]]
@@ -18767,24 +19904,23 @@ dependencies = [
"sp-application-crypto",
"sp-core",
"sp-runtime",
- "sp-std 8.0.0",
]
[[package]]
name = "sp-timestamp"
-version = "4.0.0-dev"
+version = "26.0.0"
dependencies = [
"async-trait",
"parity-scale-codec",
"sp-inherents",
"sp-runtime",
- "sp-std 8.0.0",
"thiserror",
]
[[package]]
name = "sp-tracing"
version = "10.0.0"
+source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
dependencies = [
"parity-scale-codec",
"sp-std 8.0.0",
@@ -18795,19 +19931,17 @@ dependencies = [
[[package]]
name = "sp-tracing"
-version = "10.0.0"
-source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
+version = "16.0.0"
dependencies = [
"parity-scale-codec",
- "sp-std 8.0.0 (git+https://github.com/paritytech/polkadot-sdk)",
"tracing",
"tracing-core",
- "tracing-subscriber 0.2.25",
+ "tracing-subscriber 0.3.18",
]
[[package]]
name = "sp-transaction-pool"
-version = "4.0.0-dev"
+version = "26.0.0"
dependencies = [
"sp-api",
"sp-runtime",
@@ -18815,7 +19949,7 @@ dependencies = [
[[package]]
name = "sp-transaction-storage-proof"
-version = "4.0.0-dev"
+version = "26.0.0"
dependencies = [
"async-trait",
"parity-scale-codec",
@@ -18823,30 +19957,28 @@ dependencies = [
"sp-core",
"sp-inherents",
"sp-runtime",
- "sp-std 8.0.0",
"sp-trie",
]
[[package]]
name = "sp-trie"
-version = "22.0.0"
+version = "29.0.0"
dependencies = [
- "ahash 0.8.7",
+ "ahash 0.8.8",
"array-bytes 6.1.0",
- "criterion 0.4.0",
+ "criterion 0.5.1",
"hash-db",
"lazy_static",
"memory-db",
"nohash-hasher",
"parity-scale-codec",
"parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
"scale-info",
"schnellru",
"sp-core",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
"sp-runtime",
- "sp-std 8.0.0",
"thiserror",
"tracing",
"trie-bench",
@@ -18857,7 +19989,7 @@ dependencies = [
[[package]]
name = "sp-version"
-version = "22.0.0"
+version = "29.0.0"
dependencies = [
"impl-serde",
"parity-scale-codec",
@@ -18866,25 +19998,26 @@ dependencies = [
"serde",
"sp-crypto-hashing-proc-macro",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-version-proc-macro",
"thiserror",
]
[[package]]
name = "sp-version-proc-macro"
-version = "8.0.0"
+version = "13.0.0"
dependencies = [
"parity-scale-codec",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"sp-version",
- "syn 2.0.48",
+ "syn 2.0.53",
]
[[package]]
name = "sp-wasm-interface"
version = "14.0.0"
+source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
dependencies = [
"anyhow",
"impl-trait-for-tuples",
@@ -18896,20 +20029,18 @@ dependencies = [
[[package]]
name = "sp-wasm-interface"
-version = "14.0.0"
-source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
+version = "20.0.0"
dependencies = [
"anyhow",
"impl-trait-for-tuples",
"log",
"parity-scale-codec",
- "sp-std 8.0.0 (git+https://github.com/paritytech/polkadot-sdk)",
"wasmtime",
]
[[package]]
name = "sp-weights"
-version = "20.0.0"
+version = "27.0.0"
dependencies = [
"bounded-collections",
"parity-scale-codec",
@@ -18918,8 +20049,7 @@ dependencies = [
"serde",
"smallvec",
"sp-arithmetic",
- "sp-debug-derive 8.0.0",
- "sp-std 8.0.0",
+ "sp-debug-derive 14.0.0",
]
[[package]]
@@ -18963,11 +20093,11 @@ checksum = "5e6915280e2d0db8911e5032a5c275571af6bdded2916abd691a659be25d3439"
dependencies = [
"Inflector",
"num-format",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"serde",
"serde_json",
- "unicode-xid",
+ "unicode-xid 0.2.4",
]
[[package]]
@@ -18988,8 +20118,8 @@ version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f07d54c4d01a1713eb363b55ba51595da15f6f1211435b71466460da022aa140"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -19001,13 +20131,13 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
[[package]]
name = "staging-chain-spec-builder"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
- "clap 4.4.18",
+ "clap 4.5.3",
"log",
"sc-chain-spec",
"serde_json",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
]
[[package]]
@@ -19016,7 +20146,7 @@ version = "3.0.0-dev"
dependencies = [
"array-bytes 6.1.0",
"assert_cmd",
- "clap 4.4.18",
+ "clap 4.5.3",
"clap_complete",
"criterion 0.4.0",
"frame-benchmarking",
@@ -19048,7 +20178,7 @@ dependencies = [
"pallet-treasury",
"parity-scale-codec",
"platforms",
- "rand",
+ "rand 0.8.5",
"regex",
"sc-authority-discovery",
"sc-basic-authorship",
@@ -19095,7 +20225,8 @@ dependencies = [
"sp-consensus-grandpa",
"sp-core",
"sp-crypto-hashing",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
+ "sp-genesis-builder",
"sp-inherents",
"sp-io",
"sp-keyring",
@@ -19106,7 +20237,7 @@ dependencies = [
"sp-state-machine",
"sp-statement-store",
"sp-timestamp",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"sp-transaction-storage-proof",
"sp-trie",
"staging-node-inspect",
@@ -19117,16 +20248,15 @@ dependencies = [
"tempfile",
"tokio",
"tokio-util",
- "try-runtime-cli",
"wait-timeout",
"wat",
]
[[package]]
name = "staging-node-inspect"
-version = "0.9.0-dev"
+version = "0.12.0"
dependencies = [
- "clap 4.4.18",
+ "clap 4.5.3",
"parity-scale-codec",
"sc-cli",
"sc-client-api",
@@ -19141,7 +20271,7 @@ dependencies = [
[[package]]
name = "staging-parachain-info"
-version = "0.1.0"
+version = "0.7.0"
dependencies = [
"cumulus-primitives-core",
"frame-support",
@@ -19149,16 +20279,16 @@ dependencies = [
"parity-scale-codec",
"scale-info",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
]
[[package]]
name = "staging-tracking-allocator"
-version = "1.0.0"
+version = "2.0.0"
[[package]]
name = "staging-xcm"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"array-bytes 6.1.0",
"bounded-collections",
@@ -19179,7 +20309,7 @@ dependencies = [
[[package]]
name = "staging-xcm-builder"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"assert_matches",
"frame-support",
@@ -19201,7 +20331,7 @@ dependencies = [
"sp-arithmetic",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-weights",
"staging-xcm",
"staging-xcm-executor",
@@ -19209,7 +20339,7 @@ dependencies = [
[[package]]
name = "staging-xcm-executor"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"environmental",
"frame-benchmarking",
@@ -19222,7 +20352,7 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"sp-weights",
"staging-xcm",
]
@@ -19233,18 +20363,6 @@ version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
-[[package]]
-name = "static_init"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11b73400442027c4adedda20a9f9b7945234a5bd8d5f7e86da22bd5d0622369c"
-dependencies = [
- "cfg_aliases",
- "libc",
- "parking_lot 0.11.2",
- "static_init_macro 0.5.0",
-]
-
[[package]]
name = "static_init"
version = "1.0.3"
@@ -19256,34 +20374,41 @@ dependencies = [
"libc",
"parking_lot 0.11.2",
"parking_lot_core 0.8.6",
- "static_init_macro 1.0.2",
+ "static_init_macro",
"winapi",
]
[[package]]
name = "static_init_macro"
-version = "0.5.0"
+version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f2261c91034a1edc3fc4d1b80e89d82714faede0515c14a75da10cb941546bbf"
+checksum = "70a2595fc3aa78f2d0e45dd425b22282dd863273761cc77780914b2cf3003acf"
dependencies = [
"cfg_aliases",
"memchr",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
[[package]]
-name = "static_init_macro"
-version = "1.0.2"
+name = "str0m"
+version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70a2595fc3aa78f2d0e45dd425b22282dd863273761cc77780914b2cf3003acf"
+checksum = "ee48572247f422dcbe68630c973f8296fbd5157119cd36a3223e48bf83d47727"
dependencies = [
- "cfg_aliases",
- "memchr",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
+ "combine",
+ "crc",
+ "hmac 0.12.1",
+ "once_cell",
+ "openssl",
+ "openssl-sys",
+ "rand 0.8.5",
+ "sctp-proto",
+ "serde",
+ "sha-1 0.10.1",
+ "thiserror",
+ "tracing",
]
[[package]]
@@ -19295,16 +20420,52 @@ dependencies = [
"bitflags 1.3.2",
"byteorder",
"keccak",
- "subtle 2.4.1",
+ "subtle 2.5.0",
"zeroize",
]
+[[package]]
+name = "strsim"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
+
[[package]]
name = "strsim"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
+[[package]]
+name = "strsim"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5ee073c9e4cd00e28217186dbe12796d692868f432bf2e97ee73bed0c56dfa01"
+
+[[package]]
+name = "structopt"
+version = "0.3.26"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0c6b5c64445ba8094a6ab0c3cd2ad323e07171012d9c98b0b15651daf1787a10"
+dependencies = [
+ "clap 2.34.0",
+ "lazy_static",
+ "structopt-derive",
+]
+
+[[package]]
+name = "structopt-derive"
+version = "0.4.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dcb5ae327f9cc13b68763b5749770cb9e048a99bd9dfdfa58d0cf05d5f64afe0"
+dependencies = [
+ "heck 0.3.3",
+ "proc-macro-error",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 1.0.109",
+]
+
[[package]]
name = "strum"
version = "0.24.1"
@@ -19320,15 +20481,24 @@ version = "0.25.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125"
+[[package]]
+name = "strum"
+version = "0.26.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5d8cec3501a5194c432b2b7976db6b7d10ec95c253208b45f83f7136aa985e29"
+dependencies = [
+ "strum_macros 0.26.2",
+]
+
[[package]]
name = "strum_macros"
version = "0.24.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59"
dependencies = [
- "heck",
- "proc-macro2",
- "quote",
+ "heck 0.4.1",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"rustversion",
"syn 1.0.109",
]
@@ -19339,37 +20509,50 @@ version = "0.25.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0"
dependencies = [
- "heck",
- "proc-macro2",
- "quote",
+ "heck 0.4.1",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"rustversion",
- "syn 2.0.48",
+ "syn 2.0.53",
+]
+
+[[package]]
+name = "strum_macros"
+version = "0.26.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c6cf59daf282c0a494ba14fd21610a0325f9f90ec9d1231dea26bcb1d696c946"
+dependencies = [
+ "heck 0.4.1",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "rustversion",
+ "syn 2.0.53",
]
[[package]]
name = "subkey"
-version = "3.0.0"
+version = "9.0.0"
dependencies = [
- "clap 4.4.18",
+ "clap 4.5.3",
"sc-cli",
]
[[package]]
name = "substrate-bip39"
-version = "0.4.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e620c7098893ba667438b47169c00aacdd9e7c10e042250ce2b60b087ec97328"
+version = "0.4.7"
dependencies = [
- "hmac 0.11.0",
- "pbkdf2 0.8.0",
- "schnorrkel 0.9.1",
- "sha2 0.9.9",
+ "bip39",
+ "hmac 0.12.1",
+ "pbkdf2",
+ "rustc-hex",
+ "schnorrkel 0.11.4",
+ "sha2 0.10.7",
"zeroize",
]
[[package]]
name = "substrate-build-script-utils"
-version = "3.0.0"
+version = "11.0.0"
[[package]]
name = "substrate-cli-test-utils"
@@ -19390,9 +20573,9 @@ dependencies = [
[[package]]
name = "substrate-frame-cli"
-version = "4.0.0-dev"
+version = "32.0.0"
dependencies = [
- "clap 4.4.18",
+ "clap 4.5.3",
"frame-support",
"frame-system",
"sc-cli",
@@ -19402,7 +20585,7 @@ dependencies = [
[[package]]
name = "substrate-frame-rpc-support"
-version = "3.0.0"
+version = "29.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -19413,13 +20596,13 @@ dependencies = [
"serde",
"sp-core",
"sp-runtime",
- "sp-storage 13.0.0",
+ "sp-storage 19.0.0",
"tokio",
]
[[package]]
name = "substrate-frame-rpc-system"
-version = "4.0.0-dev"
+version = "28.0.0"
dependencies = [
"assert_matches",
"frame-system-rpc-runtime-api",
@@ -19435,14 +20618,14 @@ dependencies = [
"sp-blockchain",
"sp-core",
"sp-runtime",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"substrate-test-runtime-client",
"tokio",
]
[[package]]
name = "substrate-prometheus-endpoint"
-version = "0.10.0-dev"
+version = "0.17.0"
dependencies = [
"hyper",
"log",
@@ -19451,9 +20634,52 @@ dependencies = [
"tokio",
]
+[[package]]
+name = "substrate-relay-helper"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "async-std",
+ "async-trait",
+ "bp-header-chain",
+ "bp-messages",
+ "bp-parachains",
+ "bp-polkadot-core",
+ "bp-relayers",
+ "bp-runtime",
+ "bridge-runtime-common",
+ "equivocation-detector",
+ "finality-grandpa",
+ "finality-relay",
+ "frame-support",
+ "frame-system",
+ "futures",
+ "hex",
+ "log",
+ "messages-relay",
+ "num-traits",
+ "pallet-balances",
+ "pallet-bridge-grandpa",
+ "pallet-bridge-messages",
+ "pallet-bridge-parachains",
+ "pallet-grandpa",
+ "pallet-transaction-payment",
+ "parachains-relay",
+ "parity-scale-codec",
+ "rbtag",
+ "relay-substrate-client",
+ "relay-utils",
+ "sp-consensus-grandpa",
+ "sp-core",
+ "sp-runtime",
+ "structopt",
+ "strum 0.26.2",
+ "thiserror",
+]
+
[[package]]
name = "substrate-rpc-client"
-version = "0.10.0-dev"
+version = "0.33.0"
dependencies = [
"async-trait",
"jsonrpsee",
@@ -19467,7 +20693,7 @@ dependencies = [
[[package]]
name = "substrate-state-trie-migration-rpc"
-version = "4.0.0-dev"
+version = "27.0.0"
dependencies = [
"jsonrpsee",
"parity-scale-codec",
@@ -19518,13 +20744,14 @@ dependencies = [
"frame-system",
"frame-system-rpc-runtime-api",
"futures",
- "json-patch",
+ "hex-literal",
"log",
"pallet-babe",
"pallet-balances",
"pallet-timestamp",
"parity-scale-codec",
"sc-block-builder",
+ "sc-chain-spec",
"sc-executor",
"sc-executor-common",
"sc-service",
@@ -19540,7 +20767,7 @@ dependencies = [
"sp-consensus-grandpa",
"sp-core",
"sp-crypto-hashing",
- "sp-externalities 0.19.0",
+ "sp-externalities 0.25.0",
"sp-genesis-builder",
"sp-inherents",
"sp-io",
@@ -19549,8 +20776,7 @@ dependencies = [
"sp-runtime",
"sp-session",
"sp-state-machine",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"sp-transaction-pool",
"sp-trie",
"sp-version",
@@ -19603,15 +20829,16 @@ dependencies = [
[[package]]
name = "substrate-wasm-builder"
-version = "5.0.0-dev"
+version = "17.0.0"
dependencies = [
"build-helper",
"cargo_metadata",
"console",
"filetime",
"parity-wasm",
+ "polkavm-linker",
"sp-maybe-compressed-blob",
- "strum 0.24.1",
+ "strum 0.26.2",
"tempfile",
"toml 0.8.8",
"walkdir",
@@ -19626,9 +20853,9 @@ checksum = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee"
[[package]]
name = "subtle"
-version = "2.4.1"
+version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601"
+checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
[[package]]
name = "subtle-ng"
@@ -19727,25 +20954,36 @@ dependencies = [
"symbolic-common",
]
+[[package]]
+name = "syn"
+version = "0.15.44"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5"
+dependencies = [
+ "proc-macro2 0.4.30",
+ "quote 0.6.13",
+ "unicode-xid 0.1.0",
+]
+
[[package]]
name = "syn"
version = "1.0.109"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"unicode-ident",
]
[[package]]
name = "syn"
-version = "2.0.48"
+version = "2.0.53"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f"
+checksum = "7383cd0e49fff4b6b90ca5670bfd3e9d6a733b3f90c686605aa7eec8c4996032"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"unicode-ident",
]
@@ -19756,9 +20994,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "86b837ef12ab88835251726eb12237655e61ec8dc8a280085d1961cdc3dfd047"
dependencies = [
"paste",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -19767,10 +21005,25 @@ version = "0.12.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
- "unicode-xid",
+ "unicode-xid 0.2.4",
+]
+
+[[package]]
+name = "sysinfo"
+version = "0.30.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1fb4f3438c8f6389c864e61221cbc97e9bca98b4daf39a5beb7bea660f528bb2"
+dependencies = [
+ "cfg-if",
+ "core-foundation-sys",
+ "libc",
+ "ntapi",
+ "once_cell",
+ "rayon",
+ "windows 0.52.0",
]
[[package]]
@@ -19863,7 +21116,7 @@ dependencies = [
"parity-scale-codec",
"polkadot-parachain-primitives",
"sp-io",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"substrate-wasm-builder",
"tiny-keccak",
]
@@ -19872,7 +21125,7 @@ dependencies = [
name = "test-parachain-adder-collator"
version = "1.0.0"
dependencies = [
- "clap 4.4.18",
+ "clap 4.5.3",
"futures",
"futures-timer",
"log",
@@ -19911,7 +21164,7 @@ dependencies = [
"parity-scale-codec",
"polkadot-parachain-primitives",
"sp-io",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"substrate-wasm-builder",
"tiny-keccak",
]
@@ -19920,7 +21173,7 @@ dependencies = [
name = "test-parachain-undying-collator"
version = "1.0.0"
dependencies = [
- "clap 4.4.18",
+ "clap 4.5.3",
"futures",
"futures-timer",
"log",
@@ -19957,13 +21210,36 @@ dependencies = [
name = "test-runtime-constants"
version = "1.0.0"
dependencies = [
- "frame-support",
- "polkadot-primitives",
- "polkadot-runtime-common",
- "smallvec",
- "sp-core",
- "sp-runtime",
- "sp-weights",
+ "frame-support",
+ "polkadot-primitives",
+ "polkadot-runtime-common",
+ "smallvec",
+ "sp-core",
+ "sp-runtime",
+ "sp-weights",
+]
+
+[[package]]
+name = "testnet-parachains-constants"
+version = "1.0.0"
+dependencies = [
+ "cumulus-primitives-core",
+ "frame-support",
+ "polkadot-core-primitives",
+ "rococo-runtime-constants",
+ "smallvec",
+ "sp-runtime",
+ "staging-xcm",
+ "westend-runtime-constants",
+]
+
+[[package]]
+name = "textwrap"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
+dependencies = [
+ "unicode-width",
]
[[package]]
@@ -19996,8 +21272,8 @@ version = "1.0.38"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "10ac1c5050e43014d16b2f94d0d2ce79e65ffdd8b38d8048f9c8f6a8a6da62ac"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"syn 1.0.109",
]
@@ -20007,9 +21283,9 @@ version = "1.0.50"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -20089,6 +21365,8 @@ checksum = "0bb39ee79a6d8de55f48f2293a830e040392f1c5f16e336bdd1788cd0aadce07"
dependencies = [
"deranged",
"itoa",
+ "libc",
+ "num_threads",
"serde",
"time-core",
"time-macros",
@@ -20145,9 +21423,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
[[package]]
name = "tokio"
-version = "1.33.0"
+version = "1.37.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4f38200e3ef7995e5ef13baec2f432a6da0aa9ac495b2c0e8f3b7eec2c92d653"
+checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
dependencies = [
"backtrace",
"bytes",
@@ -20157,20 +21435,20 @@ dependencies = [
"parking_lot 0.12.1",
"pin-project-lite 0.2.12",
"signal-hook-registry",
- "socket2 0.5.3",
+ "socket2 0.5.6",
"tokio-macros",
"windows-sys 0.48.0",
]
[[package]]
name = "tokio-macros"
-version = "2.1.0"
+version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
+checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -20180,7 +21458,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7f57eb36ecbe0fc510036adff84824dd3c24bb781e21bfa67b69d556aa85214f"
dependencies = [
"pin-project",
- "rand",
+ "rand 0.8.5",
"tokio",
]
@@ -20194,6 +21472,17 @@ dependencies = [
"tokio",
]
+[[package]]
+name = "tokio-rustls"
+version = "0.25.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f"
+dependencies = [
+ "rustls 0.22.2",
+ "rustls-pki-types",
+ "tokio",
+]
+
[[package]]
name = "tokio-stream"
version = "0.1.14"
@@ -20228,7 +21517,22 @@ dependencies = [
"futures-util",
"log",
"tokio",
- "tungstenite",
+ "tungstenite 0.17.3",
+]
+
+[[package]]
+name = "tokio-tungstenite"
+version = "0.20.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "212d5dcb2a1ce06d81107c3d0ffa3121fe974b73f068c8282cb1c32328113b6c"
+dependencies = [
+ "futures-util",
+ "log",
+ "rustls 0.21.6",
+ "rustls-native-certs 0.6.3",
+ "tokio",
+ "tokio-rustls 0.24.1",
+ "tungstenite 0.20.1",
]
[[package]]
@@ -20255,18 +21559,6 @@ dependencies = [
"serde",
]
-[[package]]
-name = "toml"
-version = "0.7.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257"
-dependencies = [
- "serde",
- "serde_spanned",
- "toml_datetime",
- "toml_edit 0.19.15",
-]
-
[[package]]
name = "toml"
version = "0.8.8"
@@ -20294,9 +21586,7 @@ version = "0.19.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
dependencies = [
- "indexmap 2.0.0",
- "serde",
- "serde_spanned",
+ "indexmap 2.2.3",
"toml_datetime",
"winnow",
]
@@ -20307,7 +21597,7 @@ version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d34d383cd00a163b4a5b85053df514d45bc330f6de7737edfe0a93311d1eaa03"
dependencies = [
- "indexmap 2.0.0",
+ "indexmap 2.2.3",
"serde",
"serde_spanned",
"toml_datetime",
@@ -20361,11 +21651,10 @@ checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52"
[[package]]
name = "tracing"
-version = "0.1.37"
+version = "0.1.40"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8"
+checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
dependencies = [
- "cfg-if",
"log",
"pin-project-lite 0.2.12",
"tracing-attributes",
@@ -20374,13 +21663,13 @@ dependencies = [
[[package]]
name = "tracing-attributes"
-version = "0.1.26"
+version = "0.1.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab"
+checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -20405,7 +21694,7 @@ dependencies = [
[[package]]
name = "tracing-gum"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"coarsetime",
"polkadot-primitives",
@@ -20415,14 +21704,14 @@ dependencies = [
[[package]]
name = "tracing-gum-proc-macro"
-version = "1.0.0"
+version = "5.0.0"
dependencies = [
"assert_matches",
"expander 2.0.0",
"proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -20467,7 +21756,6 @@ dependencies = [
"chrono",
"lazy_static",
"matchers 0.0.1",
- "parking_lot 0.11.2",
"regex",
"serde",
"serde_json",
@@ -20486,9 +21774,11 @@ version = "0.3.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b"
dependencies = [
+ "chrono",
"matchers 0.1.0",
"nu-ansi-term",
"once_cell",
+ "parking_lot 0.12.1",
"regex",
"sharded-slab",
"smallvec",
@@ -20500,11 +21790,11 @@ dependencies = [
[[package]]
name = "trie-bench"
-version = "0.38.0"
+version = "0.39.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4680cb226e31d2a096592d0edecdda91cc371743002f80c0f8cf80219819b3b"
+checksum = "3092f400e9f7e3ce8c1756016a8b6287163ab7a11dd47d82169260cb4cc2d680"
dependencies = [
- "criterion 0.4.0",
+ "criterion 0.5.1",
"hash-db",
"keccak-hasher",
"memory-db",
@@ -20516,12 +21806,11 @@ dependencies = [
[[package]]
name = "trie-db"
-version = "0.28.0"
+version = "0.29.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff28e0f815c2fea41ebddf148e008b077d2faddb026c9555b29696114d602642"
+checksum = "65ed83be775d85ebb0e272914fff6462c39b3ddd6dc67b5c1c41271aad280c69"
dependencies = [
"hash-db",
- "hashbrown 0.13.2",
"log",
"rustc-hex",
"smallvec",
@@ -20555,14 +21844,14 @@ dependencies = [
"async-trait",
"cfg-if",
"data-encoding",
- "enum-as-inner",
+ "enum-as-inner 0.5.1",
"futures-channel",
"futures-io",
"futures-util",
"idna 0.2.3",
"ipnet",
"lazy_static",
- "rand",
+ "rand 0.8.5",
"smallvec",
"socket2 0.4.9",
"thiserror",
@@ -20572,6 +21861,31 @@ dependencies = [
"url",
]
+[[package]]
+name = "trust-dns-proto"
+version = "0.23.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3119112651c157f4488931a01e586aa459736e9d6046d3bd9105ffb69352d374"
+dependencies = [
+ "async-trait",
+ "cfg-if",
+ "data-encoding",
+ "enum-as-inner 0.6.0",
+ "futures-channel",
+ "futures-io",
+ "futures-util",
+ "idna 0.4.0",
+ "ipnet",
+ "once_cell",
+ "rand 0.8.5",
+ "smallvec",
+ "thiserror",
+ "tinyvec",
+ "tokio",
+ "tracing",
+ "url",
+]
+
[[package]]
name = "trust-dns-resolver"
version = "0.22.0"
@@ -20589,61 +21903,41 @@ dependencies = [
"thiserror",
"tokio",
"tracing",
- "trust-dns-proto",
+ "trust-dns-proto 0.22.0",
]
[[package]]
-name = "try-lock"
-version = "0.2.4"
+name = "trust-dns-resolver"
+version = "0.23.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed"
-
-[[package]]
-name = "try-runtime-cli"
-version = "0.10.0-dev"
+checksum = "10a3e6c3aff1718b3c73e395d1f35202ba2ffa847c6a62eea0db8fb4cfe30be6"
dependencies = [
- "assert_cmd",
- "async-trait",
- "clap 4.4.18",
- "frame-remote-externalities",
- "frame-try-runtime",
- "hex",
- "log",
- "node-primitives",
- "parity-scale-codec",
- "regex",
- "sc-cli",
- "sc-executor",
- "serde",
- "serde_json",
- "sp-api",
- "sp-consensus-aura",
- "sp-consensus-babe",
- "sp-core",
- "sp-debug-derive 8.0.0",
- "sp-externalities 0.19.0",
- "sp-inherents",
- "sp-io",
- "sp-keystore",
- "sp-rpc",
- "sp-runtime",
- "sp-state-machine",
- "sp-timestamp",
- "sp-transaction-storage-proof",
- "sp-version",
- "sp-weights",
- "substrate-cli-test-utils",
- "substrate-rpc-client",
- "tempfile",
+ "cfg-if",
+ "futures-util",
+ "ipconfig",
+ "lru-cache",
+ "once_cell",
+ "parking_lot 0.12.1",
+ "rand 0.8.5",
+ "resolv-conf",
+ "smallvec",
+ "thiserror",
"tokio",
- "zstd 0.12.4",
+ "tracing",
+ "trust-dns-proto 0.23.2",
]
+[[package]]
+name = "try-lock"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed"
+
[[package]]
name = "trybuild"
-version = "1.0.88"
+version = "1.0.89"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "76de4f783e610194f6c98bfd53f9fc52bb2e0d02c947621e8a0f4ecc799b2880"
+checksum = "9a9d3ba662913483d6722303f619e75ea10b7855b0f8e0d72799cf8621bb488f"
dependencies = [
"basic-toml",
"dissimilar",
@@ -20673,13 +21967,33 @@ dependencies = [
"http",
"httparse",
"log",
- "rand",
+ "rand 0.8.5",
"sha-1 0.10.1",
"thiserror",
"url",
"utf-8",
]
+[[package]]
+name = "tungstenite"
+version = "0.20.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9e3dac10fd62eaf6617d3a904ae222845979aec67c615d1c842b4002c7666fb9"
+dependencies = [
+ "byteorder",
+ "bytes",
+ "data-encoding",
+ "http",
+ "httparse",
+ "log",
+ "rand 0.8.5",
+ "rustls 0.21.6",
+ "sha1",
+ "thiserror",
+ "url",
+ "utf-8",
+]
+
[[package]]
name = "twox-hash"
version = "1.6.3"
@@ -20688,7 +22002,7 @@ checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675"
dependencies = [
"cfg-if",
"digest 0.10.7",
- "rand",
+ "rand 0.8.5",
"static_assertions",
]
@@ -20743,12 +22057,24 @@ dependencies = [
"tinyvec",
]
+[[package]]
+name = "unicode-segmentation"
+version = "1.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
+
[[package]]
name = "unicode-width"
version = "0.1.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
+[[package]]
+name = "unicode-xid"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
+
[[package]]
name = "unicode-xid"
version = "0.2.4"
@@ -20757,12 +22083,12 @@ checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"
[[package]]
name = "universal-hash"
-version = "0.4.1"
+version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f214e8f697e925001e66ec2c6e37a4ef93f0f78c2eed7814394e10c62025b05"
+checksum = "8326b2c654932e3e4f9196e69d08fdf7cfd718e1dc6f66b347e6024a0c961402"
dependencies = [
"generic-array 0.14.7",
- "subtle 2.4.1",
+ "subtle 2.5.0",
]
[[package]]
@@ -20772,25 +22098,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea"
dependencies = [
"crypto-common",
- "subtle 2.4.1",
+ "subtle 2.5.0",
]
[[package]]
name = "unsafe-libyaml"
-version = "0.2.10"
+version = "0.2.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab4c90930b95a82d00dc9e9ac071b4991924390d46cbd0dfe566148667605e4b"
+checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861"
[[package]]
name = "unsigned-varint"
-version = "0.7.1"
+version = "0.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d86a8dc7f45e4c1b0d30e43038c38f274e77af056aa5f74b93c2cf9eb3c1c836"
+checksum = "6889a77d49f1f013504cec6bf97a2c730394adedaeb1deb5ea08949a50541105"
dependencies = [
"asynchronous-codec",
"bytes",
"futures-io",
"futures-util",
+ "tokio-util",
]
[[package]]
@@ -20842,9 +22169,9 @@ checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
[[package]]
name = "value-bag"
-version = "1.4.1"
+version = "1.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d92ccd67fb88503048c01b59152a04effd0782d035a83a6d256ce6085f08f4a3"
+checksum = "8fec26a25bd6fca441cdd0f769fd7f891bae119f996de31f86a5eddccef54c1d"
dependencies = [
"value-bag-serde1",
"value-bag-sval2",
@@ -20852,9 +22179,9 @@ dependencies = [
[[package]]
name = "value-bag-serde1"
-version = "1.4.1"
+version = "1.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0b9f3feef403a50d4d67e9741a6d8fc688bcbb4e4f31bd4aab72cc690284394"
+checksum = "ead5b693d906686203f19a49e88c477fb8c15798b68cf72f60b4b5521b4ad891"
dependencies = [
"erased-serde",
"serde",
@@ -20863,9 +22190,9 @@ dependencies = [
[[package]]
name = "value-bag-sval2"
-version = "1.4.1"
+version = "1.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30b24f4146b6f3361e91cbf527d1fb35e9376c3c0cef72ca5ec5af6d640fad7d"
+checksum = "3b9d0f4a816370c3a0d7d82d603b62198af17675b12fe5e91de6b47ceb505882"
dependencies = [
"sval",
"sval_buffer",
@@ -20882,6 +22209,12 @@ version = "0.2.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
+[[package]]
+name = "vec_map"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
+
[[package]]
name = "version_check"
version = "0.9.4"
@@ -20909,7 +22242,7 @@ dependencies = [
"arrayref",
"constcat",
"digest 0.10.7",
- "rand",
+ "rand 0.8.5",
"rand_chacha 0.3.1",
"rand_core 0.6.4",
"sha2 0.10.7",
@@ -20985,9 +22318,9 @@ dependencies = [
"bumpalo",
"log",
"once_cell",
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
"wasm-bindgen-shared",
]
@@ -21009,7 +22342,7 @@ version = "0.2.87"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d"
dependencies = [
- "quote",
+ "quote 1.0.35",
"wasm-bindgen-macro-support",
]
@@ -21019,9 +22352,9 @@ version = "0.2.87"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
"wasm-bindgen-backend",
"wasm-bindgen-shared",
]
@@ -21052,8 +22385,8 @@ version = "0.3.37"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ecb993dd8c836930ed130e020e77d9b2e65dd0fbab1b67c790b0f5d80b11a575"
dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
]
[[package]]
@@ -21131,9 +22464,9 @@ dependencies = [
[[package]]
name = "wasmi"
-version = "0.31.0"
+version = "0.31.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f341edb80021141d4ae6468cbeefc50798716a347d4085c3811900049ea8945"
+checksum = "77a8281d1d660cdf54c76a3efa9ddd0c270cada1383a995db3ccb43d166456c7"
dependencies = [
"smallvec",
"spin 0.9.8",
@@ -21144,9 +22477,9 @@ dependencies = [
[[package]]
name = "wasmi_arena"
-version = "0.4.0"
+version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "401c1f35e413fac1846d4843745589d9ec678977ab35a384db8ae7830525d468"
+checksum = "104a7f73be44570cac297b3035d76b169d6599637631cf37a1703326a0727073"
[[package]]
name = "wasmi_core"
@@ -21354,7 +22687,7 @@ dependencies = [
"memfd",
"memoffset 0.8.0",
"paste",
- "rand",
+ "rand 0.8.5",
"rustix 0.36.15",
"wasmtime-asm-macros",
"wasmtime-environ",
@@ -21450,7 +22783,7 @@ dependencies = [
[[package]]
name = "westend-runtime"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"binary-merkle-tree",
"bitvec",
@@ -21482,7 +22815,6 @@ dependencies = [
"pallet-fast-unstake",
"pallet-grandpa",
"pallet-identity",
- "pallet-im-online",
"pallet-indices",
"pallet-membership",
"pallet-message-queue",
@@ -21545,9 +22877,9 @@ dependencies = [
"sp-runtime",
"sp-session",
"sp-staking",
- "sp-std 8.0.0",
- "sp-storage 13.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-storage 19.0.0",
+ "sp-tracing 16.0.0",
"sp-transaction-pool",
"sp-version",
"staging-xcm",
@@ -21557,11 +22889,12 @@ dependencies = [
"tiny-keccak",
"tokio",
"westend-runtime-constants",
+ "xcm-fee-payment-runtime-api",
]
[[package]]
name = "westend-runtime-constants"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"frame-support",
"polkadot-primitives",
@@ -21667,6 +23000,40 @@ dependencies = [
"windows-targets 0.48.5",
]
+[[package]]
+name = "windows"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
+dependencies = [
+ "windows-core",
+ "windows-targets 0.52.0",
+]
+
+[[package]]
+name = "windows-core"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
+dependencies = [
+ "windows-targets 0.52.0",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.42.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
+dependencies = [
+ "windows_aarch64_gnullvm 0.42.2",
+ "windows_aarch64_msvc 0.42.2",
+ "windows_i686_gnu 0.42.2",
+ "windows_i686_msvc 0.42.2",
+ "windows_x86_64_gnu 0.42.2",
+ "windows_x86_64_gnullvm 0.42.2",
+ "windows_x86_64_msvc 0.42.2",
+]
+
[[package]]
name = "windows-sys"
version = "0.45.0"
@@ -21940,7 +23307,7 @@ version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fb66477291e7e8d2b0ff1bcb900bf29489a9692816d79874bea351e7a8b6de96"
dependencies = [
- "curve25519-dalek 4.1.1",
+ "curve25519-dalek 4.1.2",
"rand_core 0.6.4",
"serde",
"zeroize",
@@ -21964,6 +23331,23 @@ dependencies = [
"time",
]
+[[package]]
+name = "x509-parser"
+version = "0.15.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7069fba5b66b9193bd2c5d3d4ff12b839118f6bcbef5328efafafb5395cf63da"
+dependencies = [
+ "asn1-rs",
+ "data-encoding",
+ "der-parser",
+ "lazy_static",
+ "nom",
+ "oid-registry",
+ "rusticata-macros",
+ "thiserror",
+ "time",
+]
+
[[package]]
name = "xattr"
version = "1.0.1"
@@ -21975,7 +23359,7 @@ dependencies = [
[[package]]
name = "xcm-emulator"
-version = "0.1.0"
+version = "0.5.0"
dependencies = [
"cumulus-pallet-parachain-system",
"cumulus-pallet-xcmp-queue",
@@ -22000,8 +23384,8 @@ dependencies = [
"sp-crypto-hashing",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"staging-xcm",
"staging-xcm-executor",
]
@@ -22016,33 +23400,49 @@ dependencies = [
"pallet-transaction-payment",
"pallet-xcm",
"parity-scale-codec",
+ "polkadot-service",
"polkadot-test-client",
"polkadot-test-runtime",
"polkadot-test-service",
"sp-consensus",
+ "sp-core",
"sp-keyring",
"sp-runtime",
"sp-state-machine",
- "sp-tracing 10.0.0",
+ "sp-tracing 16.0.0",
"staging-xcm",
"staging-xcm-executor",
]
+[[package]]
+name = "xcm-fee-payment-runtime-api"
+version = "0.1.0"
+dependencies = [
+ "frame-support",
+ "parity-scale-codec",
+ "scale-info",
+ "sp-api",
+ "sp-runtime",
+ "sp-std 14.0.0",
+ "sp-weights",
+ "staging-xcm",
+]
+
[[package]]
name = "xcm-procedural"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"Inflector",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
"staging-xcm",
- "syn 2.0.48",
+ "syn 2.0.53",
"trybuild",
]
[[package]]
name = "xcm-simulator"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"frame-support",
"parity-scale-codec",
@@ -22051,7 +23451,7 @@ dependencies = [
"polkadot-parachain-primitives",
"polkadot-runtime-parachains",
"sp-io",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
"staging-xcm-builder",
"staging-xcm-executor",
@@ -22059,7 +23459,7 @@ dependencies = [
[[package]]
name = "xcm-simulator-example"
-version = "1.0.0"
+version = "7.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -22076,8 +23476,8 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
- "sp-tracing 10.0.0",
+ "sp-std 14.0.0",
+ "sp-tracing 16.0.0",
"staging-xcm",
"staging-xcm-builder",
"staging-xcm-executor",
@@ -22089,8 +23489,10 @@ name = "xcm-simulator-fuzzer"
version = "1.0.0"
dependencies = [
"arbitrary",
+ "frame-executive",
"frame-support",
"frame-system",
+ "frame-try-runtime",
"honggfuzz",
"pallet-balances",
"pallet-message-queue",
@@ -22103,7 +23505,7 @@ dependencies = [
"sp-core",
"sp-io",
"sp-runtime",
- "sp-std 8.0.0",
+ "sp-std 14.0.0",
"staging-xcm",
"staging-xcm-builder",
"staging-xcm-executor",
@@ -22120,7 +23522,7 @@ dependencies = [
"log",
"nohash-hasher",
"parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
"static_assertions",
]
@@ -22154,16 +23556,16 @@ version = "0.7.32"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
name = "zeroize"
-version = "1.6.0"
+version = "1.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9"
+checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
dependencies = [
"zeroize_derive",
]
@@ -22174,9 +23576,9 @@ version = "1.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
]
[[package]]
@@ -22191,7 +23593,7 @@ dependencies = [
"serde_json",
"thiserror",
"tokio",
- "tokio-tungstenite",
+ "tokio-tungstenite 0.17.2",
"tracing-gum",
"url",
]
diff --git a/Cargo.toml b/Cargo.toml
index 20cc16039fe48a2e4f35019cef4bcf84ffd3d969..460c49f7f37c2d43e021e4bfa8f4263ac1ea3063 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -3,30 +3,33 @@ authors = ["Parity Technologies "]
edition = "2021"
repository = "https://github.com/paritytech/polkadot-sdk.git"
license = "GPL-3.0-only"
+homepage = "https://paritytech.github.io/polkadot-sdk/master/polkadot_sdk_docs/index.html"
[workspace]
resolver = "2"
members = [
"bridges/bin/runtime-common",
+ "bridges/chains/chain-asset-hub-rococo",
+ "bridges/chains/chain-asset-hub-westend",
+ "bridges/chains/chain-bridge-hub-cumulus",
+ "bridges/chains/chain-bridge-hub-kusama",
+ "bridges/chains/chain-bridge-hub-polkadot",
+ "bridges/chains/chain-bridge-hub-rococo",
+ "bridges/chains/chain-bridge-hub-westend",
+ "bridges/chains/chain-kusama",
+ "bridges/chains/chain-polkadot",
+ "bridges/chains/chain-polkadot-bulletin",
+ "bridges/chains/chain-rococo",
+ "bridges/chains/chain-westend",
+ "bridges/modules/beefy",
"bridges/modules/grandpa",
"bridges/modules/messages",
"bridges/modules/parachains",
"bridges/modules/relayers",
"bridges/modules/xcm-bridge-hub",
"bridges/modules/xcm-bridge-hub-router",
- "bridges/primitives/chain-asset-hub-rococo",
- "bridges/primitives/chain-asset-hub-westend",
- "bridges/primitives/chain-bridge-hub-cumulus",
- "bridges/primitives/chain-bridge-hub-kusama",
- "bridges/primitives/chain-bridge-hub-polkadot",
- "bridges/primitives/chain-bridge-hub-rococo",
- "bridges/primitives/chain-bridge-hub-westend",
- "bridges/primitives/chain-kusama",
- "bridges/primitives/chain-polkadot",
- "bridges/primitives/chain-polkadot-bulletin",
- "bridges/primitives/chain-rococo",
- "bridges/primitives/chain-westend",
+ "bridges/primitives/beefy",
"bridges/primitives/header-chain",
"bridges/primitives/messages",
"bridges/primitives/parachains",
@@ -36,19 +39,28 @@ members = [
"bridges/primitives/test-utils",
"bridges/primitives/xcm-bridge-hub",
"bridges/primitives/xcm-bridge-hub-router",
- "bridges/snowbridge/parachain/pallets/ethereum-client",
- "bridges/snowbridge/parachain/pallets/inbound-queue",
- "bridges/snowbridge/parachain/pallets/outbound-queue",
- "bridges/snowbridge/parachain/pallets/outbound-queue/merkle-tree",
- "bridges/snowbridge/parachain/pallets/outbound-queue/runtime-api",
- "bridges/snowbridge/parachain/pallets/system",
- "bridges/snowbridge/parachain/pallets/system/runtime-api",
- "bridges/snowbridge/parachain/primitives/beacon",
- "bridges/snowbridge/parachain/primitives/core",
- "bridges/snowbridge/parachain/primitives/ethereum",
- "bridges/snowbridge/parachain/primitives/router",
- "bridges/snowbridge/parachain/runtime/runtime-common",
- "bridges/snowbridge/parachain/runtime/test-common",
+ "bridges/relays/client-substrate",
+ "bridges/relays/equivocation",
+ "bridges/relays/finality",
+ "bridges/relays/lib-substrate-relay",
+ "bridges/relays/messages",
+ "bridges/relays/parachains",
+ "bridges/relays/utils",
+ "bridges/snowbridge/pallets/ethereum-client",
+ "bridges/snowbridge/pallets/ethereum-client/fixtures",
+ "bridges/snowbridge/pallets/inbound-queue",
+ "bridges/snowbridge/pallets/inbound-queue/fixtures",
+ "bridges/snowbridge/pallets/outbound-queue",
+ "bridges/snowbridge/pallets/outbound-queue/merkle-tree",
+ "bridges/snowbridge/pallets/outbound-queue/runtime-api",
+ "bridges/snowbridge/pallets/system",
+ "bridges/snowbridge/pallets/system/runtime-api",
+ "bridges/snowbridge/primitives/beacon",
+ "bridges/snowbridge/primitives/core",
+ "bridges/snowbridge/primitives/ethereum",
+ "bridges/snowbridge/primitives/router",
+ "bridges/snowbridge/runtime/runtime-common",
+ "bridges/snowbridge/runtime/test-common",
"cumulus/client/cli",
"cumulus/client/collator",
"cumulus/client/consensus/aura",
@@ -72,9 +84,6 @@ members = [
"cumulus/pallets/solo-to-para",
"cumulus/pallets/xcm",
"cumulus/pallets/xcmp-queue",
- "cumulus/parachain-template/node",
- "cumulus/parachain-template/pallets/template",
- "cumulus/parachain-template/runtime",
"cumulus/parachains/common",
"cumulus/parachains/integration-tests/emulated/chains/parachains/assets/asset-hub-rococo",
"cumulus/parachains/integration-tests/emulated/chains/parachains/assets/asset-hub-westend",
@@ -108,6 +117,7 @@ members = [
"cumulus/parachains/runtimes/bridge-hubs/common",
"cumulus/parachains/runtimes/bridge-hubs/test-utils",
"cumulus/parachains/runtimes/collectives/collectives-westend",
+ "cumulus/parachains/runtimes/constants",
"cumulus/parachains/runtimes/contracts/contracts-rococo",
"cumulus/parachains/runtimes/coretime/coretime-rococo",
"cumulus/parachains/runtimes/coretime/coretime-westend",
@@ -124,6 +134,7 @@ members = [
"cumulus/primitives/core",
"cumulus/primitives/parachain-inherent",
"cumulus/primitives/proof-size-hostfunction",
+ "cumulus/primitives/storage-weight-reclaim",
"cumulus/primitives/timestamp",
"cumulus/primitives/utility",
"cumulus/test/client",
@@ -212,14 +223,10 @@ members = [
"polkadot/xcm/xcm-builder",
"polkadot/xcm/xcm-executor",
"polkadot/xcm/xcm-executor/integration-tests",
+ "polkadot/xcm/xcm-fee-payment-runtime-api",
"polkadot/xcm/xcm-simulator",
"polkadot/xcm/xcm-simulator/example",
"polkadot/xcm/xcm-simulator/fuzzer",
- "substrate/bin/minimal/node",
- "substrate/bin/minimal/runtime",
- "substrate/bin/node-template/node",
- "substrate/bin/node-template/pallets/template",
- "substrate/bin/node-template/runtime",
"substrate/bin/node/bench",
"substrate/bin/node/cli",
"substrate/bin/node/inspect",
@@ -252,6 +259,7 @@ members = [
"substrate/client/db",
"substrate/client/executor",
"substrate/client/executor/common",
+ "substrate/client/executor/polkavm",
"substrate/client/executor/runtime-test",
"substrate/client/executor/wasmtime",
"substrate/client/informant",
@@ -261,13 +269,13 @@ members = [
"substrate/client/mixnet",
"substrate/client/network",
"substrate/client/network-gossip",
- "substrate/client/network/bitswap",
"substrate/client/network/common",
"substrate/client/network/light",
"substrate/client/network/statement",
"substrate/client/network/sync",
"substrate/client/network/test",
"substrate/client/network/transactions",
+ "substrate/client/network/types",
"substrate/client/offchain",
"substrate/client/proposer-metrics",
"substrate/client/rpc",
@@ -332,7 +340,9 @@ members = [
"substrate/frame/examples/dev-mode",
"substrate/frame/examples/frame-crate",
"substrate/frame/examples/kitchensink",
+ "substrate/frame/examples/multi-block-migrations",
"substrate/frame/examples/offchain-worker",
+ "substrate/frame/examples/single-block-migrations",
"substrate/frame/examples/split",
"substrate/frame/examples/tasks",
"substrate/frame/executive",
@@ -347,6 +357,7 @@ members = [
"substrate/frame/membership",
"substrate/frame/merkle-mountain-range",
"substrate/frame/message-queue",
+ "substrate/frame/migrations",
"substrate/frame/mixnet",
"substrate/frame/multisig",
"substrate/frame/nft-fractionalization",
@@ -363,6 +374,7 @@ members = [
"substrate/frame/offences/benchmarking",
"substrate/frame/paged-list",
"substrate/frame/paged-list/fuzzer",
+ "substrate/frame/parameters",
"substrate/frame/preimage",
"substrate/frame/proxy",
"substrate/frame/ranked-collective",
@@ -489,14 +501,27 @@ members = [
"substrate/utils/frame/frame-utilities-cli",
"substrate/utils/frame/generate-bags",
"substrate/utils/frame/generate-bags/node-runtime",
+ "substrate/utils/frame/omni-bencher",
"substrate/utils/frame/remote-externalities",
"substrate/utils/frame/rpc/client",
"substrate/utils/frame/rpc/state-trie-migration-rpc",
"substrate/utils/frame/rpc/support",
"substrate/utils/frame/rpc/system",
- "substrate/utils/frame/try-runtime/cli",
"substrate/utils/prometheus",
+ "substrate/utils/substrate-bip39",
"substrate/utils/wasm-builder",
+
+ "templates/minimal/node",
+ "templates/minimal/pallets/template",
+ "templates/minimal/runtime",
+
+ "templates/solochain/node",
+ "templates/solochain/pallets/template",
+ "templates/solochain/runtime",
+
+ "templates/parachain/node",
+ "templates/parachain/pallets/template",
+ "templates/parachain/runtime",
]
default-members = ["polkadot", "substrate/bin/node/cli"]
@@ -529,6 +554,21 @@ stable_sort_primitive = { level = "allow", priority = 2 } # prefer st
extra-unused-type-parameters = { level = "allow", priority = 2 } # stylistic
default_constructed_unit_structs = { level = "allow", priority = 2 } # stylistic
+[workspace.dependencies]
+polkavm = "0.9.3"
+polkavm-linker = "0.9.2"
+polkavm-derive = "0.9.1"
+log = { version = "0.4.21", default-features = false }
+quote = { version = "1.0.33" }
+serde = { version = "1.0.197", default-features = false }
+serde-big-array = { version = "0.3.2" }
+serde_derive = { version = "1.0.117" }
+serde_json = { version = "1.0.114", default-features = false }
+serde_yaml = { version = "0.9" }
+syn = { version = "2.0.53" }
+thiserror = { version = "1.0.48" }
+tracing-subscriber = { version = "0.3.18" }
+
[profile.release]
# Polkadot runtime requires unwinding.
panic = "unwind"
@@ -588,6 +628,7 @@ num-bigint = { opt-level = 3 }
parking_lot = { opt-level = 3 }
parking_lot_core = { opt-level = 3 }
percent-encoding = { opt-level = 3 }
+polkavm-linker = { opt-level = 3 }
primitive-types = { opt-level = 3 }
reed-solomon-novelpoly = { opt-level = 3 }
ring = { opt-level = 3 }
diff --git a/README.md b/README.md
index b94376b35ab0c52e680379b82a67a529fc9d84f7..63743a456f4c8f8561bbeee8c59d63b88d352285 100644
--- a/README.md
+++ b/README.md
@@ -18,8 +18,9 @@ way. The Polkadot SDK comprises three main pieces of software:
[![Polkadot-license](https://img.shields.io/badge/License-GPL3-blue)](./polkadot/LICENSE)
Implementation of a node for the https://polkadot.network in Rust, using the Substrate framework. This directory
-currently contains runtimes for the Polkadot, Kusama, Westend, and Rococo networks. In the future, these will be
-relocated to the [`runtimes`](https://github.com/polkadot-fellows/runtimes/) repository.
+currently contains runtimes for the Westend and Rococo test networks. Polkadot, Kusama and their system chain runtimes
+are located in the [`runtimes`](https://github.com/polkadot-fellows/runtimes/) repository maintained by
+[the Polkadot Technical Fellowship](https://polkadot-fellows.github.io/dashboard/#/overview).
## [Substrate](./substrate/)
[![SubstrateRustDocs](https://img.shields.io/badge/Rust_Docs-Substrate-24CC85?logo=rust)](https://paritytech.github.io/polkadot-sdk/master/polkadot_sdk_docs/polkadot_sdk/substrate/index.html)
@@ -35,6 +36,26 @@ Polkadot.
Cumulus is a set of tools for writing Substrate-based Polkadot parachains.
+## Releases
+
+> [!NOTE]
+> Our release process is still Work-In-Progress and may not yet reflect the aspired outline here.
+
+The Polkadot-SDK has two release channels: `stable` and `nightly`. Production software is advised to only use `stable`.
+`nightly` is meant for tinkerers to try out the latest features. The detailed release process is described in
+[RELEASE.md](docs/RELEASE.md).
+
+### Stable
+
+`stable` releases have a support duration of **three months**. In this period, the release will not have any breaking
+changes. It will receive bug fixes, security fixes, performance fixes and new non-breaking features on a **two week**
+cadence.
+
+### Nightly
+
+`nightly` releases are released every night from the `master` branch, potentially with breaking changes. They have
+pre-release version numbers in the format `major.0.0-nightlyYYMMDD`.
+
## Upstream Dependencies
Below are the primary upstream dependencies utilized in this project:
diff --git a/bridges/.gitignore b/bridges/.gitignore
deleted file mode 100644
index 5d10cfa41a4487247e2c331144d3dabf0ec5e6f7..0000000000000000000000000000000000000000
--- a/bridges/.gitignore
+++ /dev/null
@@ -1,26 +0,0 @@
-**/target/
-**/.env
-**/.env2
-**/rust-toolchain
-hfuzz_target
-hfuzz_workspace
-**/Cargo.lock
-
-**/*.rs.bk
-
-*.o
-*.so
-*.rlib
-*.dll
-.gdb_history
-
-*.exe
-
-.DS_Store
-
-.cargo
-.idea
-.vscode
-*.iml
-*.swp
-*.swo
diff --git a/bridges/README.md b/bridges/README.md
index a2ce213d2541c346361eb28125a06e3079e1c269..8bfa39841f51e7824d0f1169540342c2bd88b664 100644
--- a/bridges/README.md
+++ b/bridges/README.md
@@ -38,10 +38,10 @@ cargo test --all
```
Also you can build the repo with [Parity CI Docker
-image](https://github.com/paritytech/scripts/tree/master/dockerfiles/bridges-ci):
+image](https://github.com/paritytech/scripts/tree/master/dockerfiles/ci-unified):
```bash
-docker pull paritytech/bridges-ci:production
+docker pull paritytech/ci-unified:latest
mkdir ~/cache
chown 1000:1000 ~/cache #processes in the container runs as "nonroot" user with UID 1000
docker run --rm -it -w /shellhere/parity-bridges-common \
@@ -49,7 +49,7 @@ docker run --rm -it -w /shellhere/parity-bridges-common \
-v "$(pwd)":/shellhere/parity-bridges-common \
-e CARGO_HOME=/cache/cargo/ \
-e SCCACHE_DIR=/cache/sccache/ \
- -e CARGO_TARGET_DIR=/cache/target/ paritytech/bridges-ci:production cargo build --all
+ -e CARGO_TARGET_DIR=/cache/target/ paritytech/ci-unified:latest cargo build --all
#artifacts can be found in ~/cache/target
```
diff --git a/bridges/bin/runtime-common/Cargo.toml b/bridges/bin/runtime-common/Cargo.toml
index 8c3e8c989dbcd0938e42356eca9681221654459c..67b91a16a302d6214830241082b21c407b04c6d1 100644
--- a/bridges/bin/runtime-common/Cargo.toml
+++ b/bridges/bin/runtime-common/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "bridge-runtime-common"
-version = "0.1.0"
+version = "0.7.0"
description = "Common types and functions that may be used by substrate-based runtimes of all bridged chains"
authors.workspace = true
edition.workspace = true
@@ -11,10 +11,10 @@ license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
workspace = true
[dependencies]
-codec = { package = "parity-scale-codec", version = "3.1.5", default-features = false, features = ["derive"] }
+codec = { package = "parity-scale-codec", version = "3.6.1", default-features = false, features = ["derive"] }
hash-db = { version = "0.16.0", default-features = false }
-log = { version = "0.4.20", default-features = false }
-scale-info = { version = "2.10.0", default-features = false, features = ["derive"] }
+log = { workspace = true }
+scale-info = { version = "2.11.1", default-features = false, features = ["derive"] }
static_assertions = { version = "1.1", optional = true }
# Bridge dependencies
diff --git a/bridges/bin/runtime-common/src/extensions/check_obsolete_extension.rs b/bridges/bin/runtime-common/src/extensions/check_obsolete_extension.rs
new file mode 100644
index 0000000000000000000000000000000000000000..4b0c052df8008410cb531c21d173ead2c4fdd450
--- /dev/null
+++ b/bridges/bin/runtime-common/src/extensions/check_obsolete_extension.rs
@@ -0,0 +1,205 @@
+// Copyright (C) Parity Technologies (UK) Ltd.
+// This file is part of Parity Bridges Common.
+
+// Parity Bridges Common is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+
+// Parity Bridges Common is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License
+// along with Parity Bridges Common. If not, see .
+
+//! Transaction extension that rejects bridge-related transactions, that include
+//! obsolete (duplicated) data or do not pass some additional pallet-specific
+//! checks.
+
+use crate::messages_call_ext::MessagesCallSubType;
+use pallet_bridge_grandpa::CallSubType as GrandpaCallSubType;
+use pallet_bridge_parachains::CallSubType as ParachainsCallSubtype;
+use sp_runtime::transaction_validity::TransactionValidity;
+
+/// A duplication of the `FilterCall` trait.
+///
+/// We need this trait in order to be able to implement it for the messages pallet,
+/// since the implementation is done outside of the pallet crate.
+pub trait BridgeRuntimeFilterCall {
+ /// Checks if a runtime call is valid.
+ fn validate(call: &Call) -> TransactionValidity;
+}
+
+impl BridgeRuntimeFilterCall for pallet_bridge_grandpa::Pallet
+where
+ T: pallet_bridge_grandpa::Config,
+ T::RuntimeCall: GrandpaCallSubType,
+{
+ fn validate(call: &T::RuntimeCall) -> TransactionValidity {
+ GrandpaCallSubType::::check_obsolete_submit_finality_proof(call)
+ }
+}
+
+impl BridgeRuntimeFilterCall
+ for pallet_bridge_parachains::Pallet
+where
+ T: pallet_bridge_parachains::Config,
+ T::RuntimeCall: ParachainsCallSubtype,
+{
+ fn validate(call: &T::RuntimeCall) -> TransactionValidity {
+ ParachainsCallSubtype::::check_obsolete_submit_parachain_heads(call)
+ }
+}
+
+impl, I: 'static> BridgeRuntimeFilterCall
+ for pallet_bridge_messages::Pallet
+where
+ T::RuntimeCall: MessagesCallSubType,
+{
+ /// Validate messages in order to avoid "mining" messages delivery and delivery confirmation
+ /// transactions, that are delivering outdated messages/confirmations. Without this validation,
+ /// even honest relayers may lose their funds if there are multiple relays running and
+ /// submitting the same messages/confirmations.
+ fn validate(call: &T::RuntimeCall) -> TransactionValidity {
+ call.check_obsolete_call()
+ }
+}
+
+/// Declares a runtime-specific `BridgeRejectObsoleteHeadersAndMessages` signed extension.
+///
+/// ## Example
+///
+/// ```nocompile
+/// generate_bridge_reject_obsolete_headers_and_messages!{
+/// Call, AccountId
+/// BridgeRococoGrandpa, BridgeRococoMessages,
+/// BridgeRococoParachains
+/// }
+/// ```
+///
+/// The goal of this extension is to avoid "mining" transactions that provide outdated bridged
+/// headers and messages. Without that extension, even honest relayers may lose their funds if
+/// there are multiple relays running and submitting the same information.
+#[macro_export]
+macro_rules! generate_bridge_reject_obsolete_headers_and_messages {
+ ($call:ty, $account_id:ty, $($filter_call:ty),*) => {
+ #[derive(Clone, codec::Decode, Default, codec::Encode, Eq, PartialEq, sp_runtime::RuntimeDebug, scale_info::TypeInfo)]
+ pub struct BridgeRejectObsoleteHeadersAndMessages;
+ impl sp_runtime::traits::SignedExtension for BridgeRejectObsoleteHeadersAndMessages {
+ const IDENTIFIER: &'static str = "BridgeRejectObsoleteHeadersAndMessages";
+ type AccountId = $account_id;
+ type Call = $call;
+ type AdditionalSigned = ();
+ type Pre = ();
+
+ fn additional_signed(&self) -> sp_std::result::Result<
+ (),
+ sp_runtime::transaction_validity::TransactionValidityError,
+ > {
+ Ok(())
+ }
+
+ fn validate(
+ &self,
+ _who: &Self::AccountId,
+ call: &Self::Call,
+ _info: &sp_runtime::traits::DispatchInfoOf,
+ _len: usize,
+ ) -> sp_runtime::transaction_validity::TransactionValidity {
+ let valid = sp_runtime::transaction_validity::ValidTransaction::default();
+ $(
+ let valid = valid
+ .combine_with(<$filter_call as $crate::extensions::check_obsolete_extension::BridgeRuntimeFilterCall<$call>>::validate(call)?);
+ )*
+ Ok(valid)
+ }
+
+ fn pre_dispatch(
+ self,
+ who: &Self::AccountId,
+ call: &Self::Call,
+ info: &sp_runtime::traits::DispatchInfoOf,
+ len: usize,
+ ) -> Result {
+ self.validate(who, call, info, len).map(drop)
+ }
+ }
+ };
+}
+
+#[cfg(test)]
+mod tests {
+ use super::*;
+ use frame_support::{assert_err, assert_ok};
+ use sp_runtime::{
+ traits::SignedExtension,
+ transaction_validity::{InvalidTransaction, TransactionValidity, ValidTransaction},
+ };
+
+ pub struct MockCall {
+ data: u32,
+ }
+
+ impl sp_runtime::traits::Dispatchable for MockCall {
+ type RuntimeOrigin = ();
+ type Config = ();
+ type Info = ();
+ type PostInfo = ();
+
+ fn dispatch(
+ self,
+ _origin: Self::RuntimeOrigin,
+ ) -> sp_runtime::DispatchResultWithInfo {
+ unimplemented!()
+ }
+ }
+
+ struct FirstFilterCall;
+ impl BridgeRuntimeFilterCall for FirstFilterCall {
+ fn validate(call: &MockCall) -> TransactionValidity {
+ if call.data <= 1 {
+ return InvalidTransaction::Custom(1).into()
+ }
+
+ Ok(ValidTransaction { priority: 1, ..Default::default() })
+ }
+ }
+
+ struct SecondFilterCall;
+ impl BridgeRuntimeFilterCall for SecondFilterCall {
+ fn validate(call: &MockCall) -> TransactionValidity {
+ if call.data <= 2 {
+ return InvalidTransaction::Custom(2).into()
+ }
+
+ Ok(ValidTransaction { priority: 2, ..Default::default() })
+ }
+ }
+
+ #[test]
+ fn test() {
+ generate_bridge_reject_obsolete_headers_and_messages!(
+ MockCall,
+ (),
+ FirstFilterCall,
+ SecondFilterCall
+ );
+
+ assert_err!(
+ BridgeRejectObsoleteHeadersAndMessages.validate(&(), &MockCall { data: 1 }, &(), 0),
+ InvalidTransaction::Custom(1)
+ );
+
+ assert_err!(
+ BridgeRejectObsoleteHeadersAndMessages.validate(&(), &MockCall { data: 2 }, &(), 0),
+ InvalidTransaction::Custom(2)
+ );
+
+ assert_ok!(
+ BridgeRejectObsoleteHeadersAndMessages.validate(&(), &MockCall { data: 3 }, &(), 0),
+ ValidTransaction { priority: 3, ..Default::default() }
+ )
+ }
+}
diff --git a/bridges/bin/runtime-common/src/extensions/mod.rs b/bridges/bin/runtime-common/src/extensions/mod.rs
new file mode 100644
index 0000000000000000000000000000000000000000..3f1b506aaae3ef66fe6f44379258356a2074464c
--- /dev/null
+++ b/bridges/bin/runtime-common/src/extensions/mod.rs
@@ -0,0 +1,21 @@
+// Copyright (C) Parity Technologies (UK) Ltd.
+// This file is part of Parity Bridges Common.
+
+// Parity Bridges Common is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+
+// Parity Bridges Common is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License
+// along with Parity Bridges Common. If not, see .
+
+//! Bridge-specific transaction extensions.
+
+pub mod check_obsolete_extension;
+pub mod priority_calculator;
+pub mod refund_relayer_extension;
diff --git a/bridges/bin/runtime-common/src/priority_calculator.rs b/bridges/bin/runtime-common/src/extensions/priority_calculator.rs
similarity index 98%
rename from bridges/bin/runtime-common/src/priority_calculator.rs
rename to bridges/bin/runtime-common/src/extensions/priority_calculator.rs
index a597fb9e2f49289360acfd7ee305b44eb7874a3e..5035553f508dfea94a0cb5ddf9b916dd7d9b4ea5 100644
--- a/bridges/bin/runtime-common/src/priority_calculator.rs
+++ b/bridges/bin/runtime-common/src/extensions/priority_calculator.rs
@@ -128,7 +128,7 @@ mod integrity_tests {
Runtime::RuntimeCall: Dispatchable,
BalanceOf: Send + Sync + FixedPointOperand,
{
- // esimate priority of transaction that delivers one message and has large tip
+ // estimate priority of transaction that delivers one message and has large tip
let maximal_messages_in_delivery_transaction =
Runtime::MaxUnconfirmedMessagesAtInboundLane::get();
let small_with_tip_priority =
@@ -163,7 +163,7 @@ mod integrity_tests {
{
// just an estimation of extra transaction bytes that are added to every transaction
// (including signature, signed extensions extra and etc + in our case it includes
- // all call arguments extept the proof itself)
+ // all call arguments except the proof itself)
let base_tx_size = 512;
// let's say we are relaying similar small messages and for every message we add more trie
// nodes to the proof (x0.5 because we expect some nodes to be reused)
diff --git a/bridges/bin/runtime-common/src/refund_relayer_extension.rs b/bridges/bin/runtime-common/src/extensions/refund_relayer_extension.rs
similarity index 88%
rename from bridges/bin/runtime-common/src/refund_relayer_extension.rs
rename to bridges/bin/runtime-common/src/extensions/refund_relayer_extension.rs
index 27b7ff1a5519b70a35c304b96b0c25108155aa46..64ae1d0b669f2ea8fdfba0df73752a9b0f6e8aec 100644
--- a/bridges/bin/runtime-common/src/refund_relayer_extension.rs
+++ b/bridges/bin/runtime-common/src/extensions/refund_relayer_extension.rs
@@ -16,14 +16,14 @@
//! Signed extension that refunds relayer if he has delivered some new messages.
//! It also refunds transaction cost if the transaction is an `utility.batchAll()`
-//! with calls that are: delivering new messsage and all necessary underlying headers
+//! with calls that are: delivering new message and all necessary underlying headers
//! (parachain or relay chain).
use crate::messages_call_ext::{
CallHelper as MessagesCallHelper, CallInfo as MessagesCallInfo, MessagesCallSubType,
};
use bp_messages::{LaneId, MessageNonce};
-use bp_relayers::{RewardsAccountOwner, RewardsAccountParams};
+use bp_relayers::{ExplicitOrAccountParams, RewardsAccountOwner, RewardsAccountParams};
use bp_runtime::{Chain, Parachain, ParachainIdOf, RangeInclusiveExt, StaticStrProvider};
use codec::{Codec, Decode, Encode};
use frame_support::{
@@ -195,6 +195,19 @@ impl CallInfo {
}
}
+ /// Returns mutable reference to pre-dispatch `finality_target` sent to the
+ /// `SubmitFinalityProof` call.
+ #[cfg(test)]
+ fn submit_finality_proof_info_mut(
+ &mut self,
+ ) -> Option<&mut SubmitFinalityProofInfo> {
+ match *self {
+ Self::AllFinalityAndMsgs(ref mut info, _, _) => Some(info),
+ Self::RelayFinalityAndMsgs(ref mut info, _) => Some(info),
+ _ => None,
+ }
+ }
+
/// Returns the pre-dispatch `SubmitParachainHeadsInfo`.
fn submit_parachain_heads_info(&self) -> Option<&SubmitParachainHeadsInfo> {
match self {
@@ -507,8 +520,9 @@ where
}
// compute priority boost
- let priority_boost =
- crate::priority_calculator::compute_priority_boost::(bundled_messages);
+ let priority_boost = crate::extensions::priority_calculator::compute_priority_boost::<
+ T::Priority,
+ >(bundled_messages);
let valid_transaction = ValidTransactionBuilder::default().priority(priority_boost);
log::trace!(
@@ -575,7 +589,10 @@ where
);
},
RelayerAccountAction::Slash(relayer, slash_account) =>
- RelayersPallet::::slash_and_deregister(&relayer, slash_account),
+ RelayersPallet::::slash_and_deregister(
+ &relayer,
+ ExplicitOrAccountParams::Params(slash_account),
+ ),
}
Ok(())
@@ -844,7 +861,7 @@ mod tests {
use bp_parachains::{BestParaHeadHash, ParaInfo};
use bp_polkadot_core::parachains::{ParaHeadsProof, ParaId};
use bp_runtime::{BasicOperatingMode, HeaderId};
- use bp_test_utils::{make_default_justification, test_keyring};
+ use bp_test_utils::{make_default_justification, test_keyring, TEST_GRANDPA_SET_ID};
use frame_support::{
assert_storage_noop, parameter_types,
traits::{fungible::Mutate, ReservableCurrency},
@@ -929,7 +946,7 @@ mod tests {
let authorities = test_keyring().into_iter().map(|(a, w)| (a.into(), w)).collect();
let best_relay_header = HeaderId(best_relay_header_number, RelayBlockHash::default());
pallet_bridge_grandpa::CurrentAuthoritySet::::put(
- StoredAuthoritySet::try_new(authorities, 0).unwrap(),
+ StoredAuthoritySet::try_new(authorities, TEST_GRANDPA_SET_ID).unwrap(),
);
pallet_bridge_grandpa::BestFinalized::::put(best_relay_header);
@@ -977,6 +994,23 @@ mod tests {
})
}
+ fn submit_relay_header_call_ex(relay_header_number: RelayBlockNumber) -> RuntimeCall {
+ let relay_header = BridgedChainHeader::new(
+ relay_header_number,
+ Default::default(),
+ Default::default(),
+ Default::default(),
+ Default::default(),
+ );
+ let relay_justification = make_default_justification(&relay_header);
+
+ RuntimeCall::BridgeGrandpa(GrandpaCall::submit_finality_proof_ex {
+ finality_target: Box::new(relay_header),
+ justification: relay_justification,
+ current_set_id: TEST_GRANDPA_SET_ID,
+ })
+ }
+
fn submit_parachain_head_call(
parachain_head_at_relay_header_number: RelayBlockNumber,
) -> RuntimeCall {
@@ -1059,6 +1093,18 @@ mod tests {
})
}
+ fn relay_finality_and_delivery_batch_call_ex(
+ relay_header_number: RelayBlockNumber,
+ best_message: MessageNonce,
+ ) -> RuntimeCall {
+ RuntimeCall::Utility(UtilityCall::batch_all {
+ calls: vec![
+ submit_relay_header_call_ex(relay_header_number),
+ message_delivery_call(best_message),
+ ],
+ })
+ }
+
fn relay_finality_and_confirmation_batch_call(
relay_header_number: RelayBlockNumber,
best_message: MessageNonce,
@@ -1071,6 +1117,18 @@ mod tests {
})
}
+ fn relay_finality_and_confirmation_batch_call_ex(
+ relay_header_number: RelayBlockNumber,
+ best_message: MessageNonce,
+ ) -> RuntimeCall {
+ RuntimeCall::Utility(UtilityCall::batch_all {
+ calls: vec![
+ submit_relay_header_call_ex(relay_header_number),
+ message_confirmation_call(best_message),
+ ],
+ })
+ }
+
fn all_finality_and_delivery_batch_call(
relay_header_number: RelayBlockNumber,
parachain_head_at_relay_header_number: RelayBlockNumber,
@@ -1085,6 +1143,20 @@ mod tests {
})
}
+ fn all_finality_and_delivery_batch_call_ex(
+ relay_header_number: RelayBlockNumber,
+ parachain_head_at_relay_header_number: RelayBlockNumber,
+ best_message: MessageNonce,
+ ) -> RuntimeCall {
+ RuntimeCall::Utility(UtilityCall::batch_all {
+ calls: vec![
+ submit_relay_header_call_ex(relay_header_number),
+ submit_parachain_head_call(parachain_head_at_relay_header_number),
+ message_delivery_call(best_message),
+ ],
+ })
+ }
+
fn all_finality_and_confirmation_batch_call(
relay_header_number: RelayBlockNumber,
parachain_head_at_relay_header_number: RelayBlockNumber,
@@ -1099,12 +1171,27 @@ mod tests {
})
}
+ fn all_finality_and_confirmation_batch_call_ex(
+ relay_header_number: RelayBlockNumber,
+ parachain_head_at_relay_header_number: RelayBlockNumber,
+ best_message: MessageNonce,
+ ) -> RuntimeCall {
+ RuntimeCall::Utility(UtilityCall::batch_all {
+ calls: vec![
+ submit_relay_header_call_ex(relay_header_number),
+ submit_parachain_head_call(parachain_head_at_relay_header_number),
+ message_confirmation_call(best_message),
+ ],
+ })
+ }
+
fn all_finality_pre_dispatch_data() -> PreDispatchData {
PreDispatchData {
relayer: relayer_account_at_this_chain(),
call_info: CallInfo::AllFinalityAndMsgs(
SubmitFinalityProofInfo {
block_number: 200,
+ current_set_id: None,
extra_weight: Weight::zero(),
extra_size: 0,
},
@@ -1128,12 +1215,20 @@ mod tests {
}
}
+ fn all_finality_pre_dispatch_data_ex() -> PreDispatchData {
+ let mut data = all_finality_pre_dispatch_data();
+ data.call_info.submit_finality_proof_info_mut().unwrap().current_set_id =
+ Some(TEST_GRANDPA_SET_ID);
+ data
+ }
+
fn all_finality_confirmation_pre_dispatch_data() -> PreDispatchData {
PreDispatchData {
relayer: relayer_account_at_this_chain(),
call_info: CallInfo::AllFinalityAndMsgs(
SubmitFinalityProofInfo {
block_number: 200,
+ current_set_id: None,
extra_weight: Weight::zero(),
extra_size: 0,
},
@@ -1153,12 +1248,20 @@ mod tests {
}
}
+ fn all_finality_confirmation_pre_dispatch_data_ex() -> PreDispatchData {
+ let mut data = all_finality_confirmation_pre_dispatch_data();
+ data.call_info.submit_finality_proof_info_mut().unwrap().current_set_id =
+ Some(TEST_GRANDPA_SET_ID);
+ data
+ }
+
fn relay_finality_pre_dispatch_data() -> PreDispatchData {
PreDispatchData {
relayer: relayer_account_at_this_chain(),
call_info: CallInfo::RelayFinalityAndMsgs(
SubmitFinalityProofInfo {
block_number: 200,
+ current_set_id: None,
extra_weight: Weight::zero(),
extra_size: 0,
},
@@ -1177,12 +1280,20 @@ mod tests {
}
}
+ fn relay_finality_pre_dispatch_data_ex() -> PreDispatchData {
+ let mut data = relay_finality_pre_dispatch_data();
+ data.call_info.submit_finality_proof_info_mut().unwrap().current_set_id =
+ Some(TEST_GRANDPA_SET_ID);
+ data
+ }
+
fn relay_finality_confirmation_pre_dispatch_data() -> PreDispatchData {
PreDispatchData {
relayer: relayer_account_at_this_chain(),
call_info: CallInfo::RelayFinalityAndMsgs(
SubmitFinalityProofInfo {
block_number: 200,
+ current_set_id: None,
extra_weight: Weight::zero(),
extra_size: 0,
},
@@ -1197,6 +1308,13 @@ mod tests {
}
}
+ fn relay_finality_confirmation_pre_dispatch_data_ex() -> PreDispatchData {
+ let mut data = relay_finality_confirmation_pre_dispatch_data();
+ data.call_info.submit_finality_proof_info_mut().unwrap().current_set_id =
+ Some(TEST_GRANDPA_SET_ID);
+ data
+ }
+
fn parachain_finality_pre_dispatch_data() -> PreDispatchData {
PreDispatchData {
relayer: relayer_account_at_this_chain(),
@@ -1393,6 +1511,10 @@ mod tests {
run_validate(all_finality_and_delivery_batch_call(200, 200, 200)),
Ok(Default::default()),
);
+ assert_eq!(
+ run_validate(all_finality_and_delivery_batch_call_ex(200, 200, 200)),
+ Ok(Default::default()),
+ );
// message confirmation validation is passing
assert_eq!(
run_validate_ignore_priority(message_confirmation_call(200)),
@@ -1410,11 +1532,17 @@ mod tests {
)),
Ok(Default::default()),
);
+ assert_eq!(
+ run_validate_ignore_priority(all_finality_and_confirmation_batch_call_ex(
+ 200, 200, 200
+ )),
+ Ok(Default::default()),
+ );
});
}
#[test]
- fn validate_boosts_priority_of_message_delivery_transactons() {
+ fn validate_boosts_priority_of_message_delivery_transactions() {
run_test(|| {
initialize_environment(100, 100, 100);
@@ -1444,7 +1572,7 @@ mod tests {
}
#[test]
- fn validate_does_not_boost_priority_of_message_delivery_transactons_with_too_many_messages() {
+ fn validate_does_not_boost_priority_of_message_delivery_transactions_with_too_many_messages() {
run_test(|| {
initialize_environment(100, 100, 100);
@@ -1500,12 +1628,24 @@ mod tests {
run_validate_ignore_priority(all_finality_and_delivery_batch_call(200, 200, 200)),
Ok(ValidTransaction::default()),
);
+ assert_eq!(
+ run_validate_ignore_priority(all_finality_and_delivery_batch_call_ex(
+ 200, 200, 200
+ )),
+ Ok(ValidTransaction::default()),
+ );
assert_eq!(
run_validate_ignore_priority(all_finality_and_confirmation_batch_call(
200, 200, 200
)),
Ok(ValidTransaction::default()),
);
+ assert_eq!(
+ run_validate_ignore_priority(all_finality_and_confirmation_batch_call_ex(
+ 200, 200, 200
+ )),
+ Ok(ValidTransaction::default()),
+ );
});
}
@@ -1518,11 +1658,19 @@ mod tests {
run_pre_dispatch(all_finality_and_delivery_batch_call(100, 200, 200)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
);
+ assert_eq!(
+ run_pre_dispatch(all_finality_and_delivery_batch_call_ex(100, 200, 200)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
+ );
assert_eq!(
run_validate(all_finality_and_delivery_batch_call(100, 200, 200)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
);
+ assert_eq!(
+ run_validate(all_finality_and_delivery_batch_call_ex(100, 200, 200)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
+ );
});
}
@@ -1535,10 +1683,18 @@ mod tests {
run_pre_dispatch(all_finality_and_delivery_batch_call(101, 100, 200)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
);
+ assert_eq!(
+ run_pre_dispatch(all_finality_and_delivery_batch_call_ex(101, 100, 200)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
+ );
assert_eq!(
run_validate(all_finality_and_delivery_batch_call(101, 100, 200)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
);
+ assert_eq!(
+ run_validate(all_finality_and_delivery_batch_call_ex(101, 100, 200)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
+ );
assert_eq!(
run_pre_dispatch(parachain_finality_and_delivery_batch_call(100, 200)),
@@ -1560,19 +1716,35 @@ mod tests {
run_pre_dispatch(all_finality_and_delivery_batch_call(200, 200, 100)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
);
+ assert_eq!(
+ run_pre_dispatch(all_finality_and_delivery_batch_call_ex(200, 200, 100)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
+ );
assert_eq!(
run_pre_dispatch(all_finality_and_confirmation_batch_call(200, 200, 100)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
);
+ assert_eq!(
+ run_pre_dispatch(all_finality_and_confirmation_batch_call_ex(200, 200, 100)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
+ );
assert_eq!(
run_validate(all_finality_and_delivery_batch_call(200, 200, 100)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
);
+ assert_eq!(
+ run_validate(all_finality_and_delivery_batch_call_ex(200, 200, 100)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
+ );
assert_eq!(
run_validate(all_finality_and_confirmation_batch_call(200, 200, 100)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
);
+ assert_eq!(
+ run_validate(all_finality_and_confirmation_batch_call_ex(200, 200, 100)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
+ );
assert_eq!(
run_pre_dispatch(parachain_finality_and_delivery_batch_call(200, 100)),
@@ -1609,10 +1781,18 @@ mod tests {
run_pre_dispatch(all_finality_and_delivery_batch_call(200, 200, 200)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Call)),
);
+ assert_eq!(
+ run_pre_dispatch(all_finality_and_delivery_batch_call_ex(200, 200, 200)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Call)),
+ );
assert_eq!(
run_pre_dispatch(all_finality_and_confirmation_batch_call(200, 200, 200)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Call)),
);
+ assert_eq!(
+ run_pre_dispatch(all_finality_and_confirmation_batch_call_ex(200, 200, 200)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Call)),
+ );
});
}
@@ -1631,10 +1811,18 @@ mod tests {
run_pre_dispatch(all_finality_and_delivery_batch_call(200, 200, 200)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Call)),
);
+ assert_eq!(
+ run_pre_dispatch(all_finality_and_delivery_batch_call_ex(200, 200, 200)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Call)),
+ );
assert_eq!(
run_pre_dispatch(all_finality_and_confirmation_batch_call(200, 200, 200)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Call)),
);
+ assert_eq!(
+ run_pre_dispatch(all_finality_and_confirmation_batch_call_ex(200, 200, 200)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Call)),
+ );
assert_eq!(
run_pre_dispatch(parachain_finality_and_delivery_batch_call(200, 200)),
@@ -1662,10 +1850,18 @@ mod tests {
run_pre_dispatch(all_finality_and_delivery_batch_call(200, 200, 200)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Call)),
);
+ assert_eq!(
+ run_pre_dispatch(all_finality_and_delivery_batch_call_ex(200, 200, 200)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Call)),
+ );
assert_eq!(
run_pre_dispatch(all_finality_and_confirmation_batch_call(200, 200, 200)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Call)),
);
+ assert_eq!(
+ run_pre_dispatch(all_finality_and_confirmation_batch_call_ex(200, 200, 200)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Call)),
+ );
assert_eq!(
run_pre_dispatch(parachain_finality_and_delivery_batch_call(200, 200)),
@@ -1696,10 +1892,18 @@ mod tests {
run_pre_dispatch(all_finality_and_delivery_batch_call(200, 200, 200)),
Ok(Some(all_finality_pre_dispatch_data())),
);
+ assert_eq!(
+ run_pre_dispatch(all_finality_and_delivery_batch_call_ex(200, 200, 200)),
+ Ok(Some(all_finality_pre_dispatch_data_ex())),
+ );
assert_eq!(
run_pre_dispatch(all_finality_and_confirmation_batch_call(200, 200, 200)),
Ok(Some(all_finality_confirmation_pre_dispatch_data())),
);
+ assert_eq!(
+ run_pre_dispatch(all_finality_and_confirmation_batch_call_ex(200, 200, 200)),
+ Ok(Some(all_finality_confirmation_pre_dispatch_data_ex())),
+ );
});
}
@@ -2126,6 +2330,12 @@ mod tests {
),
Ok(None),
);
+ assert_eq!(
+ TestGrandpaExtensionProvider::parse_and_check_for_obsolete_call(
+ &all_finality_and_delivery_batch_call_ex(200, 200, 200)
+ ),
+ Ok(None),
+ );
// relay + parachain + message confirmation calls batch is ignored
assert_eq!(
@@ -2134,6 +2344,12 @@ mod tests {
),
Ok(None),
);
+ assert_eq!(
+ TestGrandpaExtensionProvider::parse_and_check_for_obsolete_call(
+ &all_finality_and_confirmation_batch_call_ex(200, 200, 200)
+ ),
+ Ok(None),
+ );
// parachain + message delivery call batch is ignored
assert_eq!(
@@ -2158,6 +2374,12 @@ mod tests {
),
Ok(Some(relay_finality_pre_dispatch_data().call_info)),
);
+ assert_eq!(
+ TestGrandpaExtensionProvider::parse_and_check_for_obsolete_call(
+ &relay_finality_and_delivery_batch_call_ex(200, 200)
+ ),
+ Ok(Some(relay_finality_pre_dispatch_data_ex().call_info)),
+ );
// relay + message confirmation call batch is accepted
assert_eq!(
@@ -2166,6 +2388,12 @@ mod tests {
),
Ok(Some(relay_finality_confirmation_pre_dispatch_data().call_info)),
);
+ assert_eq!(
+ TestGrandpaExtensionProvider::parse_and_check_for_obsolete_call(
+ &relay_finality_and_confirmation_batch_call_ex(200, 200)
+ ),
+ Ok(Some(relay_finality_confirmation_pre_dispatch_data_ex().call_info)),
+ );
// message delivery call batch is accepted
assert_eq!(
@@ -2194,11 +2422,19 @@ mod tests {
run_grandpa_pre_dispatch(relay_finality_and_delivery_batch_call(100, 200)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
);
+ assert_eq!(
+ run_grandpa_pre_dispatch(relay_finality_and_delivery_batch_call_ex(100, 200)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
+ );
assert_eq!(
run_grandpa_validate(relay_finality_and_delivery_batch_call(100, 200)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
);
+ assert_eq!(
+ run_grandpa_validate(relay_finality_and_delivery_batch_call_ex(100, 200)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
+ );
});
}
@@ -2211,19 +2447,35 @@ mod tests {
run_grandpa_pre_dispatch(relay_finality_and_delivery_batch_call(200, 100)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
);
+ assert_eq!(
+ run_grandpa_pre_dispatch(relay_finality_and_delivery_batch_call_ex(200, 100)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
+ );
assert_eq!(
run_grandpa_pre_dispatch(relay_finality_and_confirmation_batch_call(200, 100)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
);
+ assert_eq!(
+ run_grandpa_pre_dispatch(relay_finality_and_confirmation_batch_call_ex(200, 100)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
+ );
assert_eq!(
run_grandpa_validate(relay_finality_and_delivery_batch_call(200, 100)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
);
+ assert_eq!(
+ run_grandpa_validate(relay_finality_and_delivery_batch_call_ex(200, 100)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
+ );
assert_eq!(
run_grandpa_validate(relay_finality_and_confirmation_batch_call(200, 100)),
Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
);
+ assert_eq!(
+ run_grandpa_validate(relay_finality_and_confirmation_batch_call_ex(200, 100)),
+ Err(TransactionValidityError::Invalid(InvalidTransaction::Stale)),
+ );
assert_eq!(
run_grandpa_pre_dispatch(message_delivery_call(100)),
@@ -2254,19 +2506,35 @@ mod tests {
run_grandpa_pre_dispatch(relay_finality_and_delivery_batch_call(200, 200)),
Ok(Some(relay_finality_pre_dispatch_data()),)
);
+ assert_eq!(
+ run_grandpa_pre_dispatch(relay_finality_and_delivery_batch_call_ex(200, 200)),
+ Ok(Some(relay_finality_pre_dispatch_data_ex()),)
+ );
assert_eq!(
run_grandpa_pre_dispatch(relay_finality_and_confirmation_batch_call(200, 200)),
Ok(Some(relay_finality_confirmation_pre_dispatch_data())),
);
+ assert_eq!(
+ run_grandpa_pre_dispatch(relay_finality_and_confirmation_batch_call_ex(200, 200)),
+ Ok(Some(relay_finality_confirmation_pre_dispatch_data_ex())),
+ );
assert_eq!(
run_grandpa_validate(relay_finality_and_delivery_batch_call(200, 200)),
Ok(Default::default()),
);
+ assert_eq!(
+ run_grandpa_validate(relay_finality_and_delivery_batch_call_ex(200, 200)),
+ Ok(Default::default()),
+ );
assert_eq!(
run_grandpa_validate(relay_finality_and_confirmation_batch_call(200, 200)),
Ok(Default::default()),
);
+ assert_eq!(
+ run_grandpa_validate(relay_finality_and_confirmation_batch_call_ex(200, 200)),
+ Ok(Default::default()),
+ );
assert_eq!(
run_grandpa_pre_dispatch(message_delivery_call(200)),
diff --git a/bridges/bin/runtime-common/src/lib.rs b/bridges/bin/runtime-common/src/lib.rs
index 2722f6f1c6d14f09ab215f8f020f2c449eda4d4b..5679acd6006ccb8540f940f0f90363f902d643f7 100644
--- a/bridges/bin/runtime-common/src/lib.rs
+++ b/bridges/bin/runtime-common/src/lib.rs
@@ -19,11 +19,7 @@
#![warn(missing_docs)]
#![cfg_attr(not(feature = "std"), no_std)]
-use crate::messages_call_ext::MessagesCallSubType;
-use pallet_bridge_grandpa::CallSubType as GrandpaCallSubType;
-use pallet_bridge_parachains::CallSubType as ParachainsCallSubtype;
-use sp_runtime::transaction_validity::TransactionValidity;
-
+pub mod extensions;
pub mod messages;
pub mod messages_api;
pub mod messages_benchmarking;
@@ -31,8 +27,6 @@ pub mod messages_call_ext;
pub mod messages_generation;
pub mod messages_xcm_extension;
pub mod parachains_benchmarking;
-pub mod priority_calculator;
-pub mod refund_relayer_extension;
mod mock;
@@ -40,184 +34,3 @@ mod mock;
pub mod integrity;
const LOG_TARGET_BRIDGE_DISPATCH: &str = "runtime::bridge-dispatch";
-
-/// A duplication of the `FilterCall` trait.
-///
-/// We need this trait in order to be able to implement it for the messages pallet,
-/// since the implementation is done outside of the pallet crate.
-pub trait BridgeRuntimeFilterCall {
- /// Checks if a runtime call is valid.
- fn validate(call: &Call) -> TransactionValidity;
-}
-
-impl BridgeRuntimeFilterCall for pallet_bridge_grandpa::Pallet
-where
- T: pallet_bridge_grandpa::Config,
- T::RuntimeCall: GrandpaCallSubType,
-{
- fn validate(call: &T::RuntimeCall) -> TransactionValidity {
- GrandpaCallSubType::::check_obsolete_submit_finality_proof(call)
- }
-}
-
-impl BridgeRuntimeFilterCall
- for pallet_bridge_parachains::Pallet
-where
- T: pallet_bridge_parachains::Config,
- T::RuntimeCall: ParachainsCallSubtype,
-{
- fn validate(call: &T::RuntimeCall) -> TransactionValidity {
- ParachainsCallSubtype::::check_obsolete_submit_parachain_heads(call)
- }
-}
-
-impl, I: 'static> BridgeRuntimeFilterCall
- for pallet_bridge_messages::Pallet
-where
- T::RuntimeCall: MessagesCallSubType,
-{
- /// Validate messages in order to avoid "mining" messages delivery and delivery confirmation
- /// transactions, that are delivering outdated messages/confirmations. Without this validation,
- /// even honest relayers may lose their funds if there are multiple relays running and
- /// submitting the same messages/confirmations.
- fn validate(call: &T::RuntimeCall) -> TransactionValidity {
- call.check_obsolete_call()
- }
-}
-
-/// Declares a runtime-specific `BridgeRejectObsoleteHeadersAndMessages` signed extension.
-///
-/// ## Example
-///
-/// ```nocompile
-/// generate_bridge_reject_obsolete_headers_and_messages!{
-/// Call, AccountId
-/// BridgeRococoGrandpa, BridgeRococoMessages,
-/// BridgeRococoParachains
-/// }
-/// ```
-///
-/// The goal of this extension is to avoid "mining" transactions that provide outdated bridged
-/// headers and messages. Without that extension, even honest relayers may lose their funds if
-/// there are multiple relays running and submitting the same information.
-#[macro_export]
-macro_rules! generate_bridge_reject_obsolete_headers_and_messages {
- ($call:ty, $account_id:ty, $($filter_call:ty),*) => {
- #[derive(Clone, codec::Decode, Default, codec::Encode, Eq, PartialEq, sp_runtime::RuntimeDebug, scale_info::TypeInfo)]
- pub struct BridgeRejectObsoleteHeadersAndMessages;
- impl sp_runtime::traits::SignedExtension for BridgeRejectObsoleteHeadersAndMessages {
- const IDENTIFIER: &'static str = "BridgeRejectObsoleteHeadersAndMessages";
- type AccountId = $account_id;
- type Call = $call;
- type AdditionalSigned = ();
- type Pre = ();
-
- fn additional_signed(&self) -> sp_std::result::Result<
- (),
- sp_runtime::transaction_validity::TransactionValidityError,
- > {
- Ok(())
- }
-
- fn validate(
- &self,
- _who: &Self::AccountId,
- call: &Self::Call,
- _info: &sp_runtime::traits::DispatchInfoOf,
- _len: usize,
- ) -> sp_runtime::transaction_validity::TransactionValidity {
- let valid = sp_runtime::transaction_validity::ValidTransaction::default();
- $(
- let valid = valid
- .combine_with(<$filter_call as $crate::BridgeRuntimeFilterCall<$call>>::validate(call)?);
- )*
- Ok(valid)
- }
-
- fn pre_dispatch(
- self,
- who: &Self::AccountId,
- call: &Self::Call,
- info: &sp_runtime::traits::DispatchInfoOf,
- len: usize,
- ) -> Result {
- self.validate(who, call, info, len).map(drop)
- }
- }
- };
-}
-
-#[cfg(test)]
-mod tests {
- use crate::BridgeRuntimeFilterCall;
- use frame_support::{assert_err, assert_ok};
- use sp_runtime::{
- traits::SignedExtension,
- transaction_validity::{InvalidTransaction, TransactionValidity, ValidTransaction},
- };
-
- pub struct MockCall {
- data: u32,
- }
-
- impl sp_runtime::traits::Dispatchable for MockCall {
- type RuntimeOrigin = ();
- type Config = ();
- type Info = ();
- type PostInfo = ();
-
- fn dispatch(
- self,
- _origin: Self::RuntimeOrigin,
- ) -> sp_runtime::DispatchResultWithInfo {
- unimplemented!()
- }
- }
-
- struct FirstFilterCall;
- impl BridgeRuntimeFilterCall for FirstFilterCall {
- fn validate(call: &MockCall) -> TransactionValidity {
- if call.data <= 1 {
- return InvalidTransaction::Custom(1).into()
- }
-
- Ok(ValidTransaction { priority: 1, ..Default::default() })
- }
- }
-
- struct SecondFilterCall;
- impl BridgeRuntimeFilterCall for SecondFilterCall {
- fn validate(call: &MockCall) -> TransactionValidity {
- if call.data <= 2 {
- return InvalidTransaction::Custom(2).into()
- }
-
- Ok(ValidTransaction { priority: 2, ..Default::default() })
- }
- }
-
- #[test]
- fn test() {
- generate_bridge_reject_obsolete_headers_and_messages!(
- MockCall,
- (),
- FirstFilterCall,
- SecondFilterCall
- );
-
- assert_err!(
- BridgeRejectObsoleteHeadersAndMessages.validate(&(), &MockCall { data: 1 }, &(), 0),
- InvalidTransaction::Custom(1)
- );
-
- assert_err!(
- BridgeRejectObsoleteHeadersAndMessages.validate(&(), &MockCall { data: 2 }, &(), 0),
- InvalidTransaction::Custom(2)
- );
-
- assert_ok!(
- BridgeRejectObsoleteHeadersAndMessages.validate(&(), &MockCall { data: 3 }, &(), 0),
- ValidTransaction { priority: 3, ..Default::default() }
- )
- }
-}
diff --git a/bridges/bin/runtime-common/src/messages_api.rs b/bridges/bin/runtime-common/src/messages_api.rs
index ccf1c754041ed84dc302f0660fdd5bde8dc8d533..7fbdeb366124778b36c77725be8ca8778020be1b 100644
--- a/bridges/bin/runtime-common/src/messages_api.rs
+++ b/bridges/bin/runtime-common/src/messages_api.rs
@@ -14,7 +14,7 @@
// You should have received a copy of the GNU General Public License
// along with Parity Bridges Common. If not, see .
-//! Helpers for implementing various message-related runtime API mthods.
+//! Helpers for implementing various message-related runtime API methods.
use bp_messages::{
InboundMessageDetails, LaneId, MessageNonce, MessagePayload, OutboundMessageDetails,
diff --git a/bridges/bin/runtime-common/src/messages_xcm_extension.rs b/bridges/bin/runtime-common/src/messages_xcm_extension.rs
index e3da6155f08a198d5469adbfc64e40213eddf8eb..46ed4da0d85481fcc7223740084945924f9c710f 100644
--- a/bridges/bin/runtime-common/src/messages_xcm_extension.rs
+++ b/bridges/bin/runtime-common/src/messages_xcm_extension.rs
@@ -248,7 +248,7 @@ impl LocalXcmQueueManager {
sender_and_lane: &SenderAndLane,
enqueued_messages: MessageNonce,
) {
- // skip if we dont want to handle congestion
+ // skip if we don't want to handle congestion
if !H::supports_congestion_detection() {
return
}
diff --git a/bridges/bin/runtime-common/src/mock.rs b/bridges/bin/runtime-common/src/mock.rs
index 8877a4fd95ce33150824b78674f38860616cf820..ad71cd0d456d827d3757433d214f7ea794406fca 100644
--- a/bridges/bin/runtime-common/src/mock.rs
+++ b/bridges/bin/runtime-common/src/mock.rs
@@ -141,7 +141,7 @@ parameter_types! {
pub const ReserveId: [u8; 8] = *b"brdgrlrs";
}
-#[derive_impl(frame_system::config_preludes::TestDefaultConfig as frame_system::DefaultConfig)]
+#[derive_impl(frame_system::config_preludes::TestDefaultConfig)]
impl frame_system::Config for TestRuntime {
type Hash = ThisChainHash;
type Hashing = ThisChainHasher;
@@ -158,14 +158,15 @@ impl pallet_utility::Config for TestRuntime {
type WeightInfo = ();
}
-#[derive_impl(pallet_balances::config_preludes::TestDefaultConfig as pallet_balances::DefaultConfig)]
+#[derive_impl(pallet_balances::config_preludes::TestDefaultConfig)]
impl pallet_balances::Config for TestRuntime {
type ReserveIdentifier = [u8; 8];
type AccountStore = System;
}
+#[derive_impl(pallet_transaction_payment::config_preludes::TestDefaultConfig)]
impl pallet_transaction_payment::Config for TestRuntime {
- type OnChargeTransaction = pallet_transaction_payment::CurrencyAdapter;
+ type OnChargeTransaction = pallet_transaction_payment::FungibleAdapter;
type OperationalFeeMultiplier = ConstU8<5>;
type WeightToFee = IdentityFee;
type LengthToFee = ConstantMultiplier;
@@ -378,7 +379,7 @@ impl Chain for BridgedUnderlyingChain {
impl ChainWithGrandpa for BridgedUnderlyingChain {
const WITH_CHAIN_GRANDPA_PALLET_NAME: &'static str = "";
const MAX_AUTHORITIES_COUNT: u32 = 16;
- const REASONABLE_HEADERS_IN_JUSTIFICATON_ANCESTRY: u32 = 8;
+ const REASONABLE_HEADERS_IN_JUSTIFICATION_ANCESTRY: u32 = 8;
const MAX_MANDATORY_HEADER_SIZE: u32 = 256;
const AVERAGE_HEADER_SIZE: u32 = 64;
}
diff --git a/bridges/primitives/chain-asset-hub-rococo/Cargo.toml b/bridges/chains/chain-asset-hub-rococo/Cargo.toml
similarity index 66%
rename from bridges/primitives/chain-asset-hub-rococo/Cargo.toml
rename to bridges/chains/chain-asset-hub-rococo/Cargo.toml
index d5f724e581fbf44c237b4634863f0d9c2437837b..9a6419a5b4055be348f4f8813e3c1301f14f7142 100644
--- a/bridges/primitives/chain-asset-hub-rococo/Cargo.toml
+++ b/bridges/chains/chain-asset-hub-rococo/Cargo.toml
@@ -1,23 +1,24 @@
[package]
name = "bp-asset-hub-rococo"
description = "Primitives of AssetHubRococo parachain runtime."
-version = "0.1.0"
+version = "0.4.0"
authors.workspace = true
edition.workspace = true
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+repository.workspace = true
[lints]
workspace = true
[dependencies]
-codec = { package = "parity-scale-codec", version = "3.1.5", default-features = false }
-scale-info = { version = "2.10.0", default-features = false, features = ["derive"] }
+codec = { package = "parity-scale-codec", version = "3.6.1", default-features = false }
+scale-info = { version = "2.11.1", default-features = false, features = ["derive"] }
# Substrate Dependencies
frame-support = { path = "../../../substrate/frame/support", default-features = false }
# Bridge Dependencies
-bp-xcm-bridge-hub-router = { path = "../xcm-bridge-hub-router", default-features = false }
+bp-xcm-bridge-hub-router = { path = "../../primitives/xcm-bridge-hub-router", default-features = false }
[features]
default = ["std"]
diff --git a/bridges/primitives/chain-asset-hub-rococo/src/lib.rs b/bridges/chains/chain-asset-hub-rococo/src/lib.rs
similarity index 100%
rename from bridges/primitives/chain-asset-hub-rococo/src/lib.rs
rename to bridges/chains/chain-asset-hub-rococo/src/lib.rs
diff --git a/bridges/primitives/chain-asset-hub-westend/Cargo.toml b/bridges/chains/chain-asset-hub-westend/Cargo.toml
similarity index 66%
rename from bridges/primitives/chain-asset-hub-westend/Cargo.toml
rename to bridges/chains/chain-asset-hub-westend/Cargo.toml
index d309e50bfbfeafbf0e32103695e004bd1bf0f7a8..1c08ee28e417cb50ce9ef9ded5f17163e1bb30d4 100644
--- a/bridges/primitives/chain-asset-hub-westend/Cargo.toml
+++ b/bridges/chains/chain-asset-hub-westend/Cargo.toml
@@ -1,23 +1,24 @@
[package]
name = "bp-asset-hub-westend"
description = "Primitives of AssetHubWestend parachain runtime."
-version = "0.1.0"
+version = "0.3.0"
authors.workspace = true
edition.workspace = true
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+repository.workspace = true
[lints]
workspace = true
[dependencies]
-codec = { package = "parity-scale-codec", version = "3.1.5", default-features = false }
-scale-info = { version = "2.10.0", default-features = false, features = ["derive"] }
+codec = { package = "parity-scale-codec", version = "3.6.1", default-features = false }
+scale-info = { version = "2.11.1", default-features = false, features = ["derive"] }
# Substrate Dependencies
frame-support = { path = "../../../substrate/frame/support", default-features = false }
# Bridge Dependencies
-bp-xcm-bridge-hub-router = { path = "../xcm-bridge-hub-router", default-features = false }
+bp-xcm-bridge-hub-router = { path = "../../primitives/xcm-bridge-hub-router", default-features = false }
[features]
default = ["std"]
diff --git a/bridges/primitives/chain-asset-hub-westend/src/lib.rs b/bridges/chains/chain-asset-hub-westend/src/lib.rs
similarity index 100%
rename from bridges/primitives/chain-asset-hub-westend/src/lib.rs
rename to bridges/chains/chain-asset-hub-westend/src/lib.rs
diff --git a/bridges/primitives/chain-bridge-hub-cumulus/Cargo.toml b/bridges/chains/chain-bridge-hub-cumulus/Cargo.toml
similarity index 76%
rename from bridges/primitives/chain-bridge-hub-cumulus/Cargo.toml
rename to bridges/chains/chain-bridge-hub-cumulus/Cargo.toml
index 73aaa53269fee9ae6e50c240043cc125fcf44a74..4b900002a4d81abb9d7364f555a150a2af6c839c 100644
--- a/bridges/primitives/chain-bridge-hub-cumulus/Cargo.toml
+++ b/bridges/chains/chain-bridge-hub-cumulus/Cargo.toml
@@ -1,10 +1,11 @@
[package]
name = "bp-bridge-hub-cumulus"
description = "Primitives for BridgeHub parachain runtimes."
-version = "0.1.0"
+version = "0.7.0"
authors.workspace = true
edition.workspace = true
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+repository.workspace = true
[lints]
workspace = true
@@ -12,9 +13,9 @@ workspace = true
[dependencies]
# Bridge Dependencies
-bp-polkadot-core = { path = "../polkadot-core", default-features = false }
-bp-messages = { path = "../messages", default-features = false }
-bp-runtime = { path = "../runtime", default-features = false }
+bp-polkadot-core = { path = "../../primitives/polkadot-core", default-features = false }
+bp-messages = { path = "../../primitives/messages", default-features = false }
+bp-runtime = { path = "../../primitives/runtime", default-features = false }
# Substrate Based Dependencies
diff --git a/bridges/primitives/chain-bridge-hub-cumulus/src/lib.rs b/bridges/chains/chain-bridge-hub-cumulus/src/lib.rs
similarity index 83%
rename from bridges/primitives/chain-bridge-hub-cumulus/src/lib.rs
rename to bridges/chains/chain-bridge-hub-cumulus/src/lib.rs
index 285f00204810bca4e392eda23f56e590ccae0401..c49aa4b856397d28746d017fd8333ae3ad10655e 100644
--- a/bridges/primitives/chain-bridge-hub-cumulus/src/lib.rs
+++ b/bridges/chains/chain-bridge-hub-cumulus/src/lib.rs
@@ -57,6 +57,12 @@ const MAXIMUM_BLOCK_WEIGHT: Weight = Weight::from_parts(constants::WEIGHT_REF_TI
.saturating_div(2)
.set_proof_size(polkadot_primitives::MAX_POV_SIZE as u64);
+/// We allow for 2 seconds of compute with a 6 second average block.
+const MAXIMUM_BLOCK_WEIGHT_FOR_ASYNC_BACKING: Weight = Weight::from_parts(
+ constants::WEIGHT_REF_TIME_PER_SECOND.saturating_mul(2),
+ polkadot_primitives::MAX_POV_SIZE as u64,
+);
+
/// All cumulus bridge hubs assume that about 5 percent of the block weight is consumed by
/// `on_initialize` handlers. This is used to limit the maximal weight of a single extrinsic.
///
@@ -96,6 +102,26 @@ parameter_types! {
})
.avg_block_initialization(AVERAGE_ON_INITIALIZE_RATIO)
.build_or_panic();
+
+ /// Weight limit of the Cumulus-based bridge hub blocks when async backing is enabled.
+ pub BlockWeightsForAsyncBacking: limits::BlockWeights = limits::BlockWeights::builder()
+ .base_block(BlockExecutionWeight::get())
+ .for_class(DispatchClass::all(), |weights| {
+ weights.base_extrinsic = ExtrinsicBaseWeight::get();
+ })
+ .for_class(DispatchClass::Normal, |weights| {
+ weights.max_total = Some(NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT_FOR_ASYNC_BACKING);
+ })
+ .for_class(DispatchClass::Operational, |weights| {
+ weights.max_total = Some(MAXIMUM_BLOCK_WEIGHT_FOR_ASYNC_BACKING);
+ // Operational transactions have an extra reserved space, so that they
+ // are included even if block reached `MAXIMUM_BLOCK_WEIGHT_FOR_ASYNC_BACKING`.
+ weights.reserved = Some(
+ MAXIMUM_BLOCK_WEIGHT_FOR_ASYNC_BACKING - NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT_FOR_ASYNC_BACKING,
+ );
+ })
+ .avg_block_initialization(AVERAGE_ON_INITIALIZE_RATIO)
+ .build_or_panic();
}
/// Public key of the chain account that may be used to verify signatures.
diff --git a/bridges/primitives/chain-bridge-hub-kusama/Cargo.toml b/bridges/chains/chain-bridge-hub-kusama/Cargo.toml
similarity index 82%
rename from bridges/primitives/chain-bridge-hub-kusama/Cargo.toml
rename to bridges/chains/chain-bridge-hub-kusama/Cargo.toml
index ea09712ae304738ec1b468317ee5aa28eb1d0cca..ff6dd8849abe3897f1c3eb3cb1de8b7d89af5ca7 100644
--- a/bridges/primitives/chain-bridge-hub-kusama/Cargo.toml
+++ b/bridges/chains/chain-bridge-hub-kusama/Cargo.toml
@@ -1,10 +1,11 @@
[package]
name = "bp-bridge-hub-kusama"
description = "Primitives of BridgeHubKusama parachain runtime."
-version = "0.1.0"
+version = "0.6.0"
authors.workspace = true
edition.workspace = true
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+repository.workspace = true
[lints]
workspace = true
@@ -13,8 +14,8 @@ workspace = true
# Bridge Dependencies
bp-bridge-hub-cumulus = { path = "../chain-bridge-hub-cumulus", default-features = false }
-bp-runtime = { path = "../runtime", default-features = false }
-bp-messages = { path = "../messages", default-features = false }
+bp-runtime = { path = "../../primitives/runtime", default-features = false }
+bp-messages = { path = "../../primitives/messages", default-features = false }
# Substrate Based Dependencies
diff --git a/bridges/primitives/chain-bridge-hub-kusama/src/lib.rs b/bridges/chains/chain-bridge-hub-kusama/src/lib.rs
similarity index 100%
rename from bridges/primitives/chain-bridge-hub-kusama/src/lib.rs
rename to bridges/chains/chain-bridge-hub-kusama/src/lib.rs
diff --git a/bridges/primitives/chain-bridge-hub-polkadot/Cargo.toml b/bridges/chains/chain-bridge-hub-polkadot/Cargo.toml
similarity index 82%
rename from bridges/primitives/chain-bridge-hub-polkadot/Cargo.toml
rename to bridges/chains/chain-bridge-hub-polkadot/Cargo.toml
index de208895fb4362c59705a6d1f9911f534d0d3669..da8b8a82fa702eeab719335fa9968b78ee965163 100644
--- a/bridges/primitives/chain-bridge-hub-polkadot/Cargo.toml
+++ b/bridges/chains/chain-bridge-hub-polkadot/Cargo.toml
@@ -1,10 +1,11 @@
[package]
name = "bp-bridge-hub-polkadot"
description = "Primitives of BridgeHubPolkadot parachain runtime."
-version = "0.1.0"
+version = "0.6.0"
authors.workspace = true
edition.workspace = true
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+repository.workspace = true
[lints]
workspace = true
@@ -14,8 +15,8 @@ workspace = true
# Bridge Dependencies
bp-bridge-hub-cumulus = { path = "../chain-bridge-hub-cumulus", default-features = false }
-bp-runtime = { path = "../runtime", default-features = false }
-bp-messages = { path = "../messages", default-features = false }
+bp-runtime = { path = "../../primitives/runtime", default-features = false }
+bp-messages = { path = "../../primitives/messages", default-features = false }
# Substrate Based Dependencies
diff --git a/bridges/primitives/chain-bridge-hub-polkadot/src/lib.rs b/bridges/chains/chain-bridge-hub-polkadot/src/lib.rs
similarity index 100%
rename from bridges/primitives/chain-bridge-hub-polkadot/src/lib.rs
rename to bridges/chains/chain-bridge-hub-polkadot/src/lib.rs
diff --git a/bridges/primitives/chain-bridge-hub-rococo/Cargo.toml b/bridges/chains/chain-bridge-hub-rococo/Cargo.toml
similarity index 82%
rename from bridges/primitives/chain-bridge-hub-rococo/Cargo.toml
rename to bridges/chains/chain-bridge-hub-rococo/Cargo.toml
index 281e1f7426178c1c1924ca40e382ea63f7a75963..f7672df012f2fc2a21cfc987468427a3222317ea 100644
--- a/bridges/primitives/chain-bridge-hub-rococo/Cargo.toml
+++ b/bridges/chains/chain-bridge-hub-rococo/Cargo.toml
@@ -1,10 +1,11 @@
[package]
name = "bp-bridge-hub-rococo"
description = "Primitives of BridgeHubRococo parachain runtime."
-version = "0.1.0"
+version = "0.7.0"
authors.workspace = true
edition.workspace = true
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+repository.workspace = true
[lints]
workspace = true
@@ -13,8 +14,8 @@ workspace = true
# Bridge Dependencies
bp-bridge-hub-cumulus = { path = "../chain-bridge-hub-cumulus", default-features = false }
-bp-runtime = { path = "../runtime", default-features = false }
-bp-messages = { path = "../messages", default-features = false }
+bp-runtime = { path = "../../primitives/runtime", default-features = false }
+bp-messages = { path = "../../primitives/messages", default-features = false }
# Substrate Based Dependencies
diff --git a/bridges/primitives/chain-bridge-hub-rococo/src/lib.rs b/bridges/chains/chain-bridge-hub-rococo/src/lib.rs
similarity index 96%
rename from bridges/primitives/chain-bridge-hub-rococo/src/lib.rs
rename to bridges/chains/chain-bridge-hub-rococo/src/lib.rs
index 7b109f30fe0b9700a513282640fd2baa6cba43f5..abce872d7ba35cf24b013aa26b4b1f1d796b5785 100644
--- a/bridges/primitives/chain-bridge-hub-rococo/src/lib.rs
+++ b/bridges/chains/chain-bridge-hub-rococo/src/lib.rs
@@ -50,7 +50,7 @@ impl Chain for BridgeHubRococo {
}
fn max_extrinsic_weight() -> Weight {
- BlockWeights::get()
+ BlockWeightsForAsyncBacking::get()
.get(DispatchClass::Normal)
.max_extrinsic
.unwrap_or(Weight::MAX)
@@ -99,7 +99,7 @@ frame_support::parameter_types! {
/// The XCM fee that is paid for executing XCM program (with `ExportMessage` instruction) at the Rococo
/// BridgeHub.
/// (initially was calculated by test `BridgeHubRococo::can_calculate_weight_for_paid_export_message_with_reserve_transfer` + `33%`)
- pub const BridgeHubRococoBaseXcmFeeInRocs: u128 = 1_640_102_205;
+ pub const BridgeHubRococoBaseXcmFeeInRocs: u128 = 59_034_266;
/// Transaction fee that is paid at the Rococo BridgeHub for delivering single inbound message.
/// (initially was calculated by test `BridgeHubRococo::can_calculate_fee_for_complex_message_delivery_transaction` + `33%`)
@@ -107,5 +107,5 @@ frame_support::parameter_types! {
/// Transaction fee that is paid at the Rococo BridgeHub for delivering single outbound message confirmation.
/// (initially was calculated by test `BridgeHubRococo::can_calculate_fee_for_complex_message_confirmation_transaction` + `33%`)
- pub const BridgeHubRococoBaseConfirmationFeeInRocs: u128 = 4_045_736_577;
+ pub const BridgeHubRococoBaseConfirmationFeeInRocs: u128 = 5_380_901_781;
}
diff --git a/bridges/primitives/chain-bridge-hub-westend/Cargo.toml b/bridges/chains/chain-bridge-hub-westend/Cargo.toml
similarity index 82%
rename from bridges/primitives/chain-bridge-hub-westend/Cargo.toml
rename to bridges/chains/chain-bridge-hub-westend/Cargo.toml
index cfd0c84eeecadf8bba1263e521f7dfc0e8c7f540..ec74c4b947d693dba92d4da5051526e49349e0a5 100644
--- a/bridges/primitives/chain-bridge-hub-westend/Cargo.toml
+++ b/bridges/chains/chain-bridge-hub-westend/Cargo.toml
@@ -1,10 +1,11 @@
[package]
name = "bp-bridge-hub-westend"
description = "Primitives of BridgeHubWestend parachain runtime."
-version = "0.1.0"
+version = "0.3.0"
authors.workspace = true
edition.workspace = true
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+repository.workspace = true
[lints]
workspace = true
@@ -14,8 +15,8 @@ workspace = true
# Bridge Dependencies
bp-bridge-hub-cumulus = { path = "../chain-bridge-hub-cumulus", default-features = false }
-bp-runtime = { path = "../runtime", default-features = false }
-bp-messages = { path = "../messages", default-features = false }
+bp-runtime = { path = "../../primitives/runtime", default-features = false }
+bp-messages = { path = "../../primitives/messages", default-features = false }
# Substrate Based Dependencies
diff --git a/bridges/primitives/chain-bridge-hub-westend/src/lib.rs b/bridges/chains/chain-bridge-hub-westend/src/lib.rs
similarity index 97%
rename from bridges/primitives/chain-bridge-hub-westend/src/lib.rs
rename to bridges/chains/chain-bridge-hub-westend/src/lib.rs
index 83d4d6e33a75907f4400200b16cd19ed1c361ec1..4af895cc6d328bdb350fa95b0e0a74f0cc731b04 100644
--- a/bridges/primitives/chain-bridge-hub-westend/src/lib.rs
+++ b/bridges/chains/chain-bridge-hub-westend/src/lib.rs
@@ -49,7 +49,7 @@ impl Chain for BridgeHubWestend {
}
fn max_extrinsic_weight() -> Weight {
- BlockWeights::get()
+ BlockWeightsForAsyncBacking::get()
.get(DispatchClass::Normal)
.max_extrinsic
.unwrap_or(Weight::MAX)
@@ -90,7 +90,7 @@ frame_support::parameter_types! {
/// The XCM fee that is paid for executing XCM program (with `ExportMessage` instruction) at the Westend
/// BridgeHub.
/// (initially was calculated by test `BridgeHubWestend::can_calculate_weight_for_paid_export_message_with_reserve_transfer` + `33%`)
- pub const BridgeHubWestendBaseXcmFeeInWnds: u128 = 492_077_333_333;
+ pub const BridgeHubWestendBaseXcmFeeInWnds: u128 = 17_756_830_000;
/// Transaction fee that is paid at the Westend BridgeHub for delivering single inbound message.
/// (initially was calculated by test `BridgeHubWestend::can_calculate_fee_for_complex_message_delivery_transaction` + `33%`)
diff --git a/bridges/primitives/chain-kusama/Cargo.toml b/bridges/chains/chain-kusama/Cargo.toml
similarity index 69%
rename from bridges/primitives/chain-kusama/Cargo.toml
rename to bridges/chains/chain-kusama/Cargo.toml
index 6ca4f051f1c15d8794ed50626588a72093206038..66061ff2793cbdd3419fa8894ab78e37486102ea 100644
--- a/bridges/primitives/chain-kusama/Cargo.toml
+++ b/bridges/chains/chain-kusama/Cargo.toml
@@ -1,10 +1,11 @@
[package]
name = "bp-kusama"
description = "Primitives of Kusama runtime."
-version = "0.1.0"
+version = "0.5.0"
authors.workspace = true
edition.workspace = true
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+repository.workspace = true
[lints]
workspace = true
@@ -13,9 +14,9 @@ workspace = true
# Bridge Dependencies
-bp-header-chain = { path = "../header-chain", default-features = false }
-bp-polkadot-core = { path = "../polkadot-core", default-features = false }
-bp-runtime = { path = "../runtime", default-features = false }
+bp-header-chain = { path = "../../primitives/header-chain", default-features = false }
+bp-polkadot-core = { path = "../../primitives/polkadot-core", default-features = false }
+bp-runtime = { path = "../../primitives/runtime", default-features = false }
# Substrate Based Dependencies
diff --git a/bridges/primitives/chain-kusama/src/lib.rs b/bridges/chains/chain-kusama/src/lib.rs
similarity index 95%
rename from bridges/primitives/chain-kusama/src/lib.rs
rename to bridges/chains/chain-kusama/src/lib.rs
index e3b4d0520f61c858b54d78dfa4a45f57bac411fb..a81004afe8127b556211d0207d2bc1f9ecc02955 100644
--- a/bridges/primitives/chain-kusama/src/lib.rs
+++ b/bridges/chains/chain-kusama/src/lib.rs
@@ -53,8 +53,8 @@ impl Chain for Kusama {
impl ChainWithGrandpa for Kusama {
const WITH_CHAIN_GRANDPA_PALLET_NAME: &'static str = WITH_KUSAMA_GRANDPA_PALLET_NAME;
const MAX_AUTHORITIES_COUNT: u32 = MAX_AUTHORITIES_COUNT;
- const REASONABLE_HEADERS_IN_JUSTIFICATON_ANCESTRY: u32 =
- REASONABLE_HEADERS_IN_JUSTIFICATON_ANCESTRY;
+ const REASONABLE_HEADERS_IN_JUSTIFICATION_ANCESTRY: u32 =
+ REASONABLE_HEADERS_IN_JUSTIFICATION_ANCESTRY;
const MAX_MANDATORY_HEADER_SIZE: u32 = MAX_MANDATORY_HEADER_SIZE;
const AVERAGE_HEADER_SIZE: u32 = AVERAGE_HEADER_SIZE;
}
diff --git a/bridges/primitives/chain-polkadot-bulletin/Cargo.toml b/bridges/chains/chain-polkadot-bulletin/Cargo.toml
similarity index 67%
rename from bridges/primitives/chain-polkadot-bulletin/Cargo.toml
rename to bridges/chains/chain-polkadot-bulletin/Cargo.toml
index 98633847462e4653a57cd1a282b74e43cc253511..2db16a00e92492e3a167458343a88a24c2186748 100644
--- a/bridges/primitives/chain-polkadot-bulletin/Cargo.toml
+++ b/bridges/chains/chain-polkadot-bulletin/Cargo.toml
@@ -1,24 +1,25 @@
[package]
name = "bp-polkadot-bulletin"
description = "Primitives of Polkadot Bulletin chain runtime."
-version = "0.1.0"
+version = "0.4.0"
authors.workspace = true
edition.workspace = true
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+repository.workspace = true
[lints]
workspace = true
[dependencies]
-codec = { package = "parity-scale-codec", version = "3.1.5", default-features = false, features = ["derive"] }
-scale-info = { version = "2.10.0", default-features = false, features = ["derive"] }
+codec = { package = "parity-scale-codec", version = "3.6.1", default-features = false, features = ["derive"] }
+scale-info = { version = "2.11.1", default-features = false, features = ["derive"] }
# Bridge Dependencies
-bp-header-chain = { path = "../header-chain", default-features = false }
-bp-messages = { path = "../messages", default-features = false }
-bp-polkadot-core = { path = "../polkadot-core", default-features = false }
-bp-runtime = { path = "../runtime", default-features = false }
+bp-header-chain = { path = "../../primitives/header-chain", default-features = false }
+bp-messages = { path = "../../primitives/messages", default-features = false }
+bp-polkadot-core = { path = "../../primitives/polkadot-core", default-features = false }
+bp-runtime = { path = "../../primitives/runtime", default-features = false }
# Substrate Based Dependencies
diff --git a/bridges/primitives/chain-polkadot-bulletin/src/lib.rs b/bridges/chains/chain-polkadot-bulletin/src/lib.rs
similarity index 96%
rename from bridges/primitives/chain-polkadot-bulletin/src/lib.rs
rename to bridges/chains/chain-polkadot-bulletin/src/lib.rs
index f2eebf9312470a42e1d3a1c7d67ab8b7a38af189..f3d300567f2b4f92cec272e0929a3c53d718c823 100644
--- a/bridges/primitives/chain-polkadot-bulletin/src/lib.rs
+++ b/bridges/chains/chain-polkadot-bulletin/src/lib.rs
@@ -43,7 +43,7 @@ use sp_runtime::{traits::DispatchInfoOf, transaction_validity::TransactionValidi
pub use bp_polkadot_core::{
AccountAddress, AccountId, Balance, Block, BlockNumber, Hash, Hasher, Header, Nonce, Signature,
SignedBlock, UncheckedExtrinsic, AVERAGE_HEADER_SIZE, EXTRA_STORAGE_PROOF_SIZE,
- MAX_MANDATORY_HEADER_SIZE, REASONABLE_HEADERS_IN_JUSTIFICATON_ANCESTRY,
+ MAX_MANDATORY_HEADER_SIZE, REASONABLE_HEADERS_IN_JUSTIFICATION_ANCESTRY,
};
/// Maximal number of GRANDPA authorities at Polkadot Bulletin chain.
@@ -62,7 +62,7 @@ const NORMAL_DISPATCH_RATIO: Perbill = Perbill::from_percent(90);
// Re following constants - we are using the same values at Cumulus parachains. They are limited
// by the maximal transaction weight/size. Since block limits at Bulletin Chain are larger than
-// at the Cumulus Bridgeg Hubs, we could reuse the same values.
+// at the Cumulus Bridge Hubs, we could reuse the same values.
/// Maximal number of unrewarded relayer entries at inbound lane for Cumulus-based parachains.
pub const MAX_UNREWARDED_RELAYERS_IN_CONFIRMATION_TX: MessageNonce = 1024;
@@ -207,8 +207,8 @@ impl Chain for PolkadotBulletin {
impl ChainWithGrandpa for PolkadotBulletin {
const WITH_CHAIN_GRANDPA_PALLET_NAME: &'static str = WITH_POLKADOT_BULLETIN_GRANDPA_PALLET_NAME;
const MAX_AUTHORITIES_COUNT: u32 = MAX_AUTHORITIES_COUNT;
- const REASONABLE_HEADERS_IN_JUSTIFICATON_ANCESTRY: u32 =
- REASONABLE_HEADERS_IN_JUSTIFICATON_ANCESTRY;
+ const REASONABLE_HEADERS_IN_JUSTIFICATION_ANCESTRY: u32 =
+ REASONABLE_HEADERS_IN_JUSTIFICATION_ANCESTRY;
const MAX_MANDATORY_HEADER_SIZE: u32 = MAX_MANDATORY_HEADER_SIZE;
const AVERAGE_HEADER_SIZE: u32 = AVERAGE_HEADER_SIZE;
}
diff --git a/bridges/primitives/chain-polkadot/Cargo.toml b/bridges/chains/chain-polkadot/Cargo.toml
similarity index 70%
rename from bridges/primitives/chain-polkadot/Cargo.toml
rename to bridges/chains/chain-polkadot/Cargo.toml
index 361901b7ae09c121d27329b2f2a238dc61dd7f2e..c700935f3083b5f287277c7d9975be53352b2506 100644
--- a/bridges/primitives/chain-polkadot/Cargo.toml
+++ b/bridges/chains/chain-polkadot/Cargo.toml
@@ -1,10 +1,11 @@
[package]
name = "bp-polkadot"
description = "Primitives of Polkadot runtime."
-version = "0.1.0"
+version = "0.5.0"
authors.workspace = true
edition.workspace = true
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+repository.workspace = true
[lints]
workspace = true
@@ -13,9 +14,9 @@ workspace = true
# Bridge Dependencies
-bp-header-chain = { path = "../header-chain", default-features = false }
-bp-polkadot-core = { path = "../polkadot-core", default-features = false }
-bp-runtime = { path = "../runtime", default-features = false }
+bp-header-chain = { path = "../../primitives/header-chain", default-features = false }
+bp-polkadot-core = { path = "../../primitives/polkadot-core", default-features = false }
+bp-runtime = { path = "../../primitives/runtime", default-features = false }
# Substrate Based Dependencies
diff --git a/bridges/primitives/chain-polkadot/src/lib.rs b/bridges/chains/chain-polkadot/src/lib.rs
similarity index 95%
rename from bridges/primitives/chain-polkadot/src/lib.rs
rename to bridges/chains/chain-polkadot/src/lib.rs
index fc5e10308a8e33463a74c041f157daaef09cc9c8..00d35783a9b61844bab7701fdb60711125447ca3 100644
--- a/bridges/primitives/chain-polkadot/src/lib.rs
+++ b/bridges/chains/chain-polkadot/src/lib.rs
@@ -55,8 +55,8 @@ impl Chain for Polkadot {
impl ChainWithGrandpa for Polkadot {
const WITH_CHAIN_GRANDPA_PALLET_NAME: &'static str = WITH_POLKADOT_GRANDPA_PALLET_NAME;
const MAX_AUTHORITIES_COUNT: u32 = MAX_AUTHORITIES_COUNT;
- const REASONABLE_HEADERS_IN_JUSTIFICATON_ANCESTRY: u32 =
- REASONABLE_HEADERS_IN_JUSTIFICATON_ANCESTRY;
+ const REASONABLE_HEADERS_IN_JUSTIFICATION_ANCESTRY: u32 =
+ REASONABLE_HEADERS_IN_JUSTIFICATION_ANCESTRY;
const MAX_MANDATORY_HEADER_SIZE: u32 = MAX_MANDATORY_HEADER_SIZE;
const AVERAGE_HEADER_SIZE: u32 = AVERAGE_HEADER_SIZE;
}
diff --git a/bridges/primitives/chain-rococo/Cargo.toml b/bridges/chains/chain-rococo/Cargo.toml
similarity index 69%
rename from bridges/primitives/chain-rococo/Cargo.toml
rename to bridges/chains/chain-rococo/Cargo.toml
index d59a00cfd147d4e5d3110e44cab906a72836a06a..5a5613bb376a5a4f75c773b3350993262149f973 100644
--- a/bridges/primitives/chain-rococo/Cargo.toml
+++ b/bridges/chains/chain-rococo/Cargo.toml
@@ -1,10 +1,11 @@
[package]
name = "bp-rococo"
description = "Primitives of Rococo runtime."
-version = "0.1.0"
+version = "0.6.0"
authors.workspace = true
edition.workspace = true
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+repository.workspace = true
[lints]
workspace = true
@@ -13,9 +14,9 @@ workspace = true
# Bridge Dependencies
-bp-header-chain = { path = "../header-chain", default-features = false }
-bp-polkadot-core = { path = "../polkadot-core", default-features = false }
-bp-runtime = { path = "../runtime", default-features = false }
+bp-header-chain = { path = "../../primitives/header-chain", default-features = false }
+bp-polkadot-core = { path = "../../primitives/polkadot-core", default-features = false }
+bp-runtime = { path = "../../primitives/runtime", default-features = false }
# Substrate Based Dependencies
diff --git a/bridges/primitives/chain-rococo/src/lib.rs b/bridges/chains/chain-rococo/src/lib.rs
similarity index 95%
rename from bridges/primitives/chain-rococo/src/lib.rs
rename to bridges/chains/chain-rococo/src/lib.rs
index f1b256f0f090f048cc8db3a16c112ed8b938f6ce..2385dd2cbb250181ce5f46aef9f1e76f8fd010d2 100644
--- a/bridges/primitives/chain-rococo/src/lib.rs
+++ b/bridges/chains/chain-rococo/src/lib.rs
@@ -53,8 +53,8 @@ impl Chain for Rococo {
impl ChainWithGrandpa for Rococo {
const WITH_CHAIN_GRANDPA_PALLET_NAME: &'static str = WITH_ROCOCO_GRANDPA_PALLET_NAME;
const MAX_AUTHORITIES_COUNT: u32 = MAX_AUTHORITIES_COUNT;
- const REASONABLE_HEADERS_IN_JUSTIFICATON_ANCESTRY: u32 =
- REASONABLE_HEADERS_IN_JUSTIFICATON_ANCESTRY;
+ const REASONABLE_HEADERS_IN_JUSTIFICATION_ANCESTRY: u32 =
+ REASONABLE_HEADERS_IN_JUSTIFICATION_ANCESTRY;
const MAX_MANDATORY_HEADER_SIZE: u32 = MAX_MANDATORY_HEADER_SIZE;
const AVERAGE_HEADER_SIZE: u32 = AVERAGE_HEADER_SIZE;
}
diff --git a/bridges/primitives/chain-westend/Cargo.toml b/bridges/chains/chain-westend/Cargo.toml
similarity index 69%
rename from bridges/primitives/chain-westend/Cargo.toml
rename to bridges/chains/chain-westend/Cargo.toml
index 6b6d2748aff7411d5247c8336aa2ac1251d11ea8..10b06d76507ef95bbff00f5560b705ecee1ec4ce 100644
--- a/bridges/primitives/chain-westend/Cargo.toml
+++ b/bridges/chains/chain-westend/Cargo.toml
@@ -1,10 +1,11 @@
[package]
name = "bp-westend"
description = "Primitives of Westend runtime."
-version = "0.1.0"
+version = "0.3.0"
authors.workspace = true
edition.workspace = true
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+repository.workspace = true
[lints]
workspace = true
@@ -13,9 +14,9 @@ workspace = true
# Bridge Dependencies
-bp-header-chain = { path = "../header-chain", default-features = false }
-bp-polkadot-core = { path = "../polkadot-core", default-features = false }
-bp-runtime = { path = "../runtime", default-features = false }
+bp-header-chain = { path = "../../primitives/header-chain", default-features = false }
+bp-polkadot-core = { path = "../../primitives/polkadot-core", default-features = false }
+bp-runtime = { path = "../../primitives/runtime", default-features = false }
# Substrate Based Dependencies
diff --git a/bridges/primitives/chain-westend/src/lib.rs b/bridges/chains/chain-westend/src/lib.rs
similarity index 95%
rename from bridges/primitives/chain-westend/src/lib.rs
rename to bridges/chains/chain-westend/src/lib.rs
index f03fd2160a700eb3817a6feb629e9d366cc366aa..b344b7f4bf93392c08502446513a9ae39296b512 100644
--- a/bridges/primitives/chain-westend/src/lib.rs
+++ b/bridges/chains/chain-westend/src/lib.rs
@@ -53,8 +53,8 @@ impl Chain for Westend {
impl ChainWithGrandpa for Westend {
const WITH_CHAIN_GRANDPA_PALLET_NAME: &'static str = WITH_WESTEND_GRANDPA_PALLET_NAME;
const MAX_AUTHORITIES_COUNT: u32 = MAX_AUTHORITIES_COUNT;
- const REASONABLE_HEADERS_IN_JUSTIFICATON_ANCESTRY: u32 =
- REASONABLE_HEADERS_IN_JUSTIFICATON_ANCESTRY;
+ const REASONABLE_HEADERS_IN_JUSTIFICATION_ANCESTRY: u32 =
+ REASONABLE_HEADERS_IN_JUSTIFICATION_ANCESTRY;
const MAX_MANDATORY_HEADER_SIZE: u32 = MAX_MANDATORY_HEADER_SIZE;
const AVERAGE_HEADER_SIZE: u32 = AVERAGE_HEADER_SIZE;
}
diff --git a/bridges/docs/bridge-relayers-claim-rewards.png b/bridges/docs/bridge-relayers-claim-rewards.png
new file mode 100644
index 0000000000000000000000000000000000000000..d56b8dd871e8445e7cab49517123b0092ce09137
Binary files /dev/null and b/bridges/docs/bridge-relayers-claim-rewards.png differ
diff --git a/bridges/docs/bridge-relayers-deregister.png b/bridges/docs/bridge-relayers-deregister.png
new file mode 100644
index 0000000000000000000000000000000000000000..e7706cee78916d7e2bbcfd7ee4a1a046a0450f87
Binary files /dev/null and b/bridges/docs/bridge-relayers-deregister.png differ
diff --git a/bridges/docs/bridge-relayers-register.png b/bridges/docs/bridge-relayers-register.png
new file mode 100644
index 0000000000000000000000000000000000000000..e9e3e1b5ac87c5c9d31477c696912fcbc93b0c78
Binary files /dev/null and b/bridges/docs/bridge-relayers-register.png differ
diff --git a/bridges/docs/running-relayer.md b/bridges/docs/running-relayer.md
new file mode 100644
index 0000000000000000000000000000000000000000..710810a476e4df5e4b80fde31f9576be5ad26391
--- /dev/null
+++ b/bridges/docs/running-relayer.md
@@ -0,0 +1,343 @@
+# Running your own bridge relayer
+
+:warning: :construction: Please read the [Disclaimer](#disclaimer) section first :construction: :warning:
+
+## Disclaimer
+
+There are several things you should know before running your own relayer:
+
+- initial bridge version (we call it bridges v1) supports any number of relayers, but **there's no guaranteed
+compensation** for running a relayer and/or submitting valid bridge transactions. Most probably you'll end up
+spending more funds than getting from rewards - please accept this fact;
+
+- even if your relayer has managed to submit a valid bridge transaction that has been included into the bridge
+hub block, there's no guarantee that you will be able to claim your compensation for that transaction. That's
+because compensations are paid from the account, controlled by relay chain governance and it could have no funds
+to compensate your useful actions. We'll be working on a proper process to resupply it on-time, but we can't
+provide any guarantee until that process is well established.
+
+## A Brief Introduction into Relayers and our Compensations Scheme
+
+Omitting details, relayer is an offchain process that is connected to both bridged chains. It looks at the
+outbound bridge messages queue and submits message delivery transactions to the target chain. There's a lot
+of details behind that simple phrase - you could find more info in the
+[High-Level Bridge Overview](./high-level-overview.md) document.
+
+Reward that is paid to relayer has two parts. The first part static and is controlled by the governance.
+It is rather small initially - e.g. you need to deliver `10_000` Kusama -> Polkadot messages to gain single
+KSM token.
+
+The other reward part is dynamic. So to deliver an XCM message from one BridgeHub to another, we'll need to
+submit two transactions on different chains. Every transaction has its cost, which is:
+
+- dynamic, because e.g. message size can change and/or fee factor of the target chain may change;
+
+- quite large, because those transactions are quite heavy (mostly in terms of size, not weight).
+
+We are compensating the cost of **valid**, **minimal** and **useful** bridge-related transactions to
+relayer, that has submitted such transaction. Valid here means that the transaction doesn't fail. Minimal
+means that all data within transaction call is actually required for the transaction to succeed. Useful
+means that all supplied data in transaction is new and yet unknown to the target chain.
+
+We have implemented a relayer that is able to craft such transactions. The rest of document contains a detailed
+information on how to deploy this software on your own node.
+
+## Relayers Concurrency
+
+As it has been said above, we are not compensating cost of transactions that are not **useful**. For
+example, if message `100` has already been delivered from Kusama Bridge Hub to Polkadot Bridge Hub, then another
+transaction that delivers the same message `100` won't be **useful**. Hence, no compensation to relayer that
+has submitted that second transaction.
+
+But what if there are several relayers running? They are noticing the same queued message `100` and
+simultaneously submit identical message delivery transactions. You may expect that there'll be one lucky
+relayer, whose transaction would win the "race" and which will receive the compensation and reward. And
+there'll be several other relayers, losing some funds on their unuseful transactions.
+
+But actually, we have a solution that invalidates transactions of "unlucky" relayers before they are
+included into the block. So at least you may be sure that you won't waste your funds on duplicate transactions.
+
+
+Some details?
+
+All **unuseful** transactions are rejected by our
+[transaction extension](https://github.com/paritytech/polkadot-sdk/blob/master/bridges/bin/runtime-common/src/refund_relayer_extension.rs),
+which also handles transaction fee compensations. You may find more info on unuseful (aka obsolete) transactions
+by lurking in the code.
+
+We also have the WiP prototype of relayers coordination protocol, where relayers will get some guarantee
+that their transactions will be prioritized over other relayers transactions at their assigned slots.
+That is planned for the future version of bridge and the progress is
+[tracked here](https://github.com/paritytech/parity-bridges-common/issues/2486).
+
+
+
+## Prerequisites
+
+Let's focus on the bridge between Polkadot and Kusama Bridge Hubs. Let's also assume that we want to start
+a relayer that "serves" an initial lane [`0x00000001`](https://github.com/polkadot-fellows/runtimes/blob/9ce1bbbbcd7843b3c76ba4d43c036bc311959e9f/system-parachains/bridge-hubs/bridge-hub-kusama/src/bridge_to_polkadot_config.rs#L54).
+
+
+Lane?
+
+Think of lane as a queue of messages that need to be delivered to the other/bridged chain. The lane is
+bidirectional, meaning that there are four "endpoints". Two "outbound" endpoints (one at every chain), contain
+messages that need to be delivered to the bridged chain. Two "inbound" are accepting messages from the bridged
+chain and also remember the relayer, who has delivered message(s) to reward it later.
+
+
+
+The same steps may be performed for other lanes and bridges as well - you'll just need to change several parameters.
+
+So to start your relayer instance, you'll need to prepare:
+
+- an address of ws/wss RPC endpoint of the Kusama relay chain;
+
+- an address of ws/wss RPC endpoint of the Polkadot relay chain;
+
+- an address of ws/wss RPC endpoint of the Kusama Bridge Hub chain;
+
+- an address of ws/wss RPC endpoint of the Polkadot Bridge Hub chain;
+
+- an account on Kusama Bridge Hub;
+
+- an account on Polkadot Bridge Hub.
+
+For RPC endpoints, you could start your own nodes, or use some public community nodes. Nodes are not meant to be
+archive or provide access to insecure RPC calls.
+
+To create an account on Bridge Hubs, you could use XCM teleport functionality. E.g. if you have an account on
+the relay chain, you could use the `teleportAssets` call of `xcmPallet` and send asset
+`V3 { id: Concrete(0, Here), Fungible: }` to beneficiary `V3(0, X1(AccountId32()))`
+on destination `V3(0, X1(Parachain(1002)))`. To estimate amounts you need, please refer to the [Costs](#costs)
+section of the document.
+
+## Registering your Relayer Account (Optional, But Please Read)
+
+Bridge transactions are quite heavy and expensive. We want to minimize block space that can be occupied by
+invalid bridge transactions and prioritize valid transactions over invalid. That is achieved by **optional**
+relayer registration. Transactions, signed by relayers with active registration, gain huge priority boost.
+In exchange, such relayers may be slashed if they submit **invalid** or **non-minimal** transaction.
+
+Transactions, signed by relayers **without** active registration, on the other hand, receive no priority
+boost. It means that if there is active registered relayer, most likely all transactions from unregistered
+will be counted as **unuseful**, not included into the block and unregistered relayer won't get any reward
+for his operations.
+
+Before registering, you should know several things about your funds:
+
+- to register, you need to hold significant amount of funds on your relayer account. As of now, it is
+ [100 KSM](https://github.com/polkadot-fellows/runtimes/blob/9ce1bbbbcd7843b3c76ba4d43c036bc311959e9f/system-parachains/bridge-hubs/bridge-hub-kusama/src/bridge_to_polkadot_config.rs#L71C14-L71C43)
+ for registration on Kusama Bridge Hub and
+ [500 DOT](https://github.com/polkadot-fellows/runtimes/blob/9ce1bbbbcd7843b3c76ba4d43c036bc311959e9f/system-parachains/bridge-hubs/bridge-hub-polkadot/src/bridge_to_kusama_config.rs#L71C14-L71C43)
+ for registration on Polkadot Bridge Hub;
+
+- when you are registered, those funds are reserved on relayer account and you can't transfer them.
+
+The registration itself, has three states: active, inactive or expired. Initially, it is active, meaning that all
+your transactions that are **validated** on top of block, where it is active get priority boost. Registration
+becomes expired when the block with the number you have specified during registration is "mined". It is the
+`validTill` parameter of the `register` call (see below). After that `validTill` block, you may unregister and get
+your reserved funds back. There's also an intermediate point between those blocks - it is the `validTill - LEASE`,
+where `LEASE` is the the chain constant, controlled by the governance. Initially it is set to `300` blocks.
+All your transactions, **validated** between the `validTill - LEASE` and `validTill` blocks do not get the
+priority boost. Also, it is forbidden to specify `validTill` such that the `validTill - currentBlock` is less
+than the `LEASE`.
+
+
+Example?
+
+| Bridge Hub Block | Registration State | Comment |
+| ----------------- | ------------------ | ------------------------------------------------------ |
+| 100 | Active | You have submitted a tx with the `register(1000)` call |
+| 101 | Active | Your message delivery transactions are boosted |
+| 102 | Active | Your message delivery transactions are boosted |
+| ... | Active | Your message delivery transactions are boosted |
+| 700 | Inactive | Your message delivery transactions are not boosted |
+| 701 | Inactive | Your message delivery transactions are not boosted |
+| ... | Inactive | Your message delivery transactions are not boosted |
+| 1000 | Expired | Your may submit a tx with the `deregister` call |
+
+
+
+So once you have enough funds on your account and have selected the `validTill` parameter value, you
+could use the Polkadot JS apps to submit an extrinsic. If you want priority boost for your transactions
+on the Kusama Bridge Hub, open the
+[Polkadot JS Apps](https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Fkusama-bridge-hub-rpc.polkadot.io#/extrinsics)
+and submit the `register` extrinsic from the `bridgeRelayers` pallet:
+
+![Register Extrinsic](./bridge-relayers-register.png)
+
+To deregister, submit the simple `deregister` extrinsic when registration is expired:
+
+![Deregister Extrinsic](./bridge-relayers-deregister.png)
+
+At any time, you can prolong your registration by calling the `register` with the larger `validTill`.
+
+## Costs
+
+Your relayer account (on both Bridge Hubs) must hold enough funds to be able to pay costs of bridge
+transactions. If your relayer behaves correctly, those costs will be compensated and you will be
+able to claim it later.
+
+**IMPORTANT**: you may add tip to your bridge transactions to boost their priority. But our
+compensation mechanism never refunds transaction tip, so all tip tokens will be lost.
+
+
+Types of bridge transactions
+
+There are two types of bridge transactions:
+
+- message delivery transaction brings queued message(s) from one Bridge Hub to another. We record
+ the fact that this specific (your) relayer has delivered those messages;
+
+- message confirmation transaction confirms that some message have been delivered and also brings
+ back information on how many messages (your) relayer has delivered. We use this information later
+ to register delivery rewards on the source chain.
+
+Several messages/confirmations may be included in a single bridge transaction. Apart from this
+data, bridge transaction may include finality and storage proofs, required to prove authenticity of
+this data.
+
+
+
+To deliver and get reward for a single message, the relayer needs to submit two transactions. One
+at the source Bridge Hub and one at the target Bridge Hub. Below are costs for Polkadot <> Kusama
+messages (as of today):
+
+- to deliver a single Polkadot -> Kusama message, you would need to pay around `0.06 KSM` at Kusama
+ Bridge Hub and around `1.62 DOT` at Polkadot Bridge Hub;
+
+- to deliver a single Kusama -> Polkadot message, you would need to pay around `1.70 DOT` at Polkadot
+ Bridge Hub and around `0.05 KSM` at Kusama Bridge Hub.
+
+Those values are not constants - they depend on call weights (that may change from release to release),
+on transaction sizes (that depends on message size and chain state) and congestion factor. In any
+case - it is your duty to make sure that the relayer has enough funds to pay transaction fees.
+
+## Claiming your Compensations and Rewards
+
+Hopefully you have successfully delivered some messages and now can claim your compensation and reward.
+This requires submitting several transactions. But first, let's check that you actually have something to
+claim. For that, let's check the state of the pallet that tracks all rewards.
+
+To check your rewards at the Kusama Bridge Hub, go to the
+[Polkadot JS Apps](https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Fkusama-bridge-hub-rpc.polkadot.io#/chainstate)
+targeting Kusama Bridge Hub, select the `bridgeRelayers` pallet, choose `relayerRewards` map and
+your relayer account. Then:
+
+- set the `laneId` to `0x00000001`
+
+- set the `bridgedChainId` to `bhpd`;
+
+- check the both variants of the `owner` field: `ThisChain` is used to pay for message delivery transactions
+ and `BridgedChain` is used to pay for message confirmation transactions.
+
+If check shows that you have some rewards, you can craft the claim transaction, with similar parameters.
+For that, go to `Extrinsics` tab of the
+[Polkadot JS Apps](https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Fkusama-bridge-hub-rpc.polkadot.io#/extrinsics)
+and submit the following transaction (make sure to change `owner` before):
+
+![Claim Rewards Extrinsic](./bridge-relayers-claim-rewards.png)
+
+To claim rewards on Polkadot Bridge Hub you can follow the same process. The only difference is that you
+need to set value of the `bridgedChainId` to `bhks`.
+
+## Starting your Relayer
+
+### Starting your Rococo <> Westend Relayer
+
+You may find the relayer image reference in the
+[Releases](https://github.com/paritytech/parity-bridges-common/releases)
+of this repository. Make sure to check supported (bundled) versions
+of release there. For Rococo <> Westend bridge, normally you may use the
+latest published release. The release notes always contain the docker
+image reference and source files, required to build relayer manually.
+
+Once you have the docker image, update variables and run the following script:
+```sh
+export DOCKER_IMAGE=
+
+export ROCOCO_HOST=
+export ROCOCO_PORT=
+# or set it to '--rococo-secure' if wss is used above
+export ROCOCO_IS_SECURE=
+export BRIDGE_HUB_ROCOCO_HOST=
+export BRIDGE_HUB_ROCOCO_PORT=
+# or set it to '--bridge-hub-rococo-secure' if wss is used above
+export BRIDGE_HUB_ROCOCO_IS_SECURE=
+export BRIDGE_HUB_ROCOCO_KEY_FILE=
+
+export WESTEND_HOST=
+export WESTEND_PORT=
+# or set it to '--westend-secure' if wss is used above
+export WESTEND_IS_SECURE=
+export BRIDGE_HUB_WESTEND_HOST=
+export BRIDGE_HUB_WESTEND_PORT=
+# or set it to '--bridge-hub-westend-secure ' if wss is used above
+export BRIDGE_HUB_WESTEND_IS_SECURE=
+export BRIDGE_HUB_WESTEND_KEY_FILE=
+
+# you can get extended relay logs (e.g. for debugging issues) by passing `-e RUST_LOG=bridge=trace`
+# argument to the `docker` binary
+docker run \
+ -v $BRIDGE_HUB_ROCOCO_KEY_FILE:/bhr.key \
+ -v $BRIDGE_HUB_WESTEND_KEY_FILE:/bhw.key \
+ $DOCKER_IMAGE \
+ relay-headers-and-messages bridge-hub-rococo-bridge-hub-westend \
+ --rococo-host $ROCOCO_HOST \
+ --rococo-port $ROCOCO_PORT \
+ $ROCOCO_IS_SECURE \
+ --rococo-version-mode Auto \
+ --bridge-hub-rococo-host $BRIDGE_HUB_ROCOCO_HOST \
+ --bridge-hub-rococo-port $BRIDGE_HUB_ROCOCO_PORT \
+ $BRIDGE_HUB_ROCOCO_IS_SECURE \
+ --bridge-hub-rococo-version-mode Auto \
+ --bridge-hub-rococo-signer-file /bhr.key \
+ --bridge-hub-rococo-transactions-mortality 16 \
+ --westend-host $WESTEND_HOST \
+ --westend-port $WESTEND_PORT \
+ $WESTEND_IS_SECURE \
+ --westend-version-mode Auto \
+ --bridge-hub-westend-host $BRIDGE_HUB_WESTEND_HOST \
+ --bridge-hub-westend-port $BRIDGE_HUB_WESTEND_PORT \
+ $BRIDGE_HUB_WESTEND_IS_SECURE \
+ --bridge-hub-westend-version-mode Auto \
+ --bridge-hub-westend-signer-file /bhw.key \
+ --bridge-hub-westend-transactions-mortality 16 \
+ --lane 00000002
+```
+
+### Starting your Polkadot <> Kusama Relayer
+
+*Work in progress, coming soon*
+
+### Watching your relayer state
+
+Our relayer provides some Prometheus metrics that you may convert into some fancy Grafana dashboards
+and alerts. By default, metrics are exposed at port `9616`. To expose endpoint to the localhost, change
+the docker command by adding following two lines:
+
+```sh
+docker run \
+ ..
+ -p 127.0.0.1:9616:9616 \ # tell Docker to bind container port 9616 to host port 9616
+ # and listen for connections on the host' localhost interface
+ ..
+ $DOCKER_IMAGE \
+ relay-headers-and-messages bridge-hub-rococo-bridge-hub-westend \
+ --prometheus-host 0.0.0.0 \ # tell `substrate-relay` binary to accept Prometheus endpoint
+ # connections from everywhere
+ ..
+```
+
+You can find more info on configuring Prometheus and Grafana in the
+[Monitor your node](https://wiki.polkadot.network/docs/maintain-guides-how-to-monitor-your-node)
+guide from Polkadot wiki.
+
+We have our own set of Grafana dashboards and alerts. You may use them for inspiration.
+Please find them in this folder:
+
+- for Rococo <> Westend bridge: [rococo-westend](https://github.com/paritytech/parity-bridges-common/tree/master/deployments/bridges/rococo-westend).
+
+- for Polkadot <> Kusama bridge: *work in progress, coming soon*
diff --git a/bridges/modules/beefy/Cargo.toml b/bridges/modules/beefy/Cargo.toml
new file mode 100644
index 0000000000000000000000000000000000000000..438f32fb146042f2704deb3092381a2b5cc68394
--- /dev/null
+++ b/bridges/modules/beefy/Cargo.toml
@@ -0,0 +1,63 @@
+[package]
+name = "pallet-bridge-beefy"
+version = "0.1.0"
+description = "Module implementing BEEFY on-chain light client used for bridging consensus of substrate-based chains."
+authors.workspace = true
+edition.workspace = true
+license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+repository.workspace = true
+publish = false
+
+[lints]
+workspace = true
+
+[dependencies]
+codec = { package = "parity-scale-codec", version = "3.6.1", default-features = false }
+log = { workspace = true }
+scale-info = { version = "2.11.1", default-features = false, features = ["derive"] }
+serde = { optional = true, workspace = true }
+
+# Bridge Dependencies
+
+bp-beefy = { path = "../../primitives/beefy", default-features = false }
+bp-runtime = { path = "../../primitives/runtime", default-features = false }
+
+# Substrate Dependencies
+
+frame-support = { path = "../../../substrate/frame/support", default-features = false }
+frame-system = { path = "../../../substrate/frame/system", default-features = false }
+sp-core = { path = "../../../substrate/primitives/core", default-features = false }
+sp-runtime = { path = "../../../substrate/primitives/runtime", default-features = false }
+sp-std = { path = "../../../substrate/primitives/std", default-features = false }
+
+[dev-dependencies]
+sp-consensus-beefy = { path = "../../../substrate/primitives/consensus/beefy" }
+mmr-lib = { package = "ckb-merkle-mountain-range", version = "0.5.2" }
+pallet-beefy-mmr = { path = "../../../substrate/frame/beefy-mmr" }
+pallet-mmr = { path = "../../../substrate/frame/merkle-mountain-range" }
+rand = "0.8.5"
+sp-io = { path = "../../../substrate/primitives/io" }
+bp-test-utils = { path = "../../primitives/test-utils" }
+
+[features]
+default = ["std"]
+std = [
+ "bp-beefy/std",
+ "bp-runtime/std",
+ "codec/std",
+ "frame-support/std",
+ "frame-system/std",
+ "log/std",
+ "scale-info/std",
+ "serde/std",
+ "sp-core/std",
+ "sp-runtime/std",
+ "sp-std/std",
+]
+try-runtime = [
+ "frame-support/try-runtime",
+ "frame-system/try-runtime",
+ "pallet-beefy-mmr/try-runtime",
+ "pallet-mmr/try-runtime",
+ "sp-runtime/try-runtime",
+]
diff --git a/bridges/modules/beefy/src/lib.rs b/bridges/modules/beefy/src/lib.rs
new file mode 100644
index 0000000000000000000000000000000000000000..27c83921021bb4299b18cbf2d3216427f8c89ccc
--- /dev/null
+++ b/bridges/modules/beefy/src/lib.rs
@@ -0,0 +1,651 @@
+// Copyright 2021 Parity Technologies (UK) Ltd.
+// This file is part of Parity Bridges Common.
+
+// Parity Bridges Common is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+
+// Parity Bridges Common is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License
+// along with Parity Bridges Common. If not, see .
+
+//! BEEFY bridge pallet.
+//!
+//! This pallet is an on-chain BEEFY light client for Substrate-based chains that are using the
+//! following pallets bundle: `pallet-mmr`, `pallet-beefy` and `pallet-beefy-mmr`.
+//!
+//! The pallet is able to verify MMR leaf proofs and BEEFY commitments, so it has access
+//! to the following data of the bridged chain:
+//!
+//! - header hashes
+//! - changes of BEEFY authorities
+//! - extra data of MMR leafs
+//!
+//! Given the header hash, other pallets are able to verify header-based proofs
+//! (e.g. storage proofs, transaction inclusion proofs, etc.).
+
+#![warn(missing_docs)]
+#![cfg_attr(not(feature = "std"), no_std)]
+
+use bp_beefy::{ChainWithBeefy, InitializationData};
+use sp_std::{boxed::Box, prelude::*};
+
+// Re-export in crate namespace for `construct_runtime!`
+pub use pallet::*;
+
+mod utils;
+
+#[cfg(test)]
+mod mock;
+#[cfg(test)]
+mod mock_chain;
+
+/// The target that will be used when publishing logs related to this pallet.
+pub const LOG_TARGET: &str = "runtime::bridge-beefy";
+
+/// Configured bridged chain.
+pub type BridgedChain = >::BridgedChain;
+/// Block number, used by configured bridged chain.
+pub type BridgedBlockNumber = bp_runtime::BlockNumberOf>;
+/// Block hash, used by configured bridged chain.
+pub type BridgedBlockHash = bp_runtime::HashOf>;
+
+/// Pallet initialization data.
+pub type InitializationDataOf =
+ InitializationData, bp_beefy::MmrHashOf>>;
+/// BEEFY commitment hasher, used by configured bridged chain.
+pub type BridgedBeefyCommitmentHasher = bp_beefy::BeefyCommitmentHasher>;
+/// BEEFY validator id, used by configured bridged chain.
+pub type BridgedBeefyAuthorityId = bp_beefy::BeefyAuthorityIdOf>;
+/// BEEFY validator set, used by configured bridged chain.
+pub type BridgedBeefyAuthoritySet = bp_beefy::BeefyAuthoritySetOf>;
+/// BEEFY authority set, used by configured bridged chain.
+pub type BridgedBeefyAuthoritySetInfo = bp_beefy::BeefyAuthoritySetInfoOf>;
+/// BEEFY signed commitment, used by configured bridged chain.
+pub type BridgedBeefySignedCommitment = bp_beefy::BeefySignedCommitmentOf>;
+/// MMR hashing algorithm, used by configured bridged chain.
+pub type BridgedMmrHashing = bp_beefy::MmrHashingOf>;
+/// MMR hashing output type of `BridgedMmrHashing`.
+pub type BridgedMmrHash = bp_beefy::MmrHashOf>;
+/// The type of the MMR leaf extra data used by the configured bridged chain.
+pub type BridgedBeefyMmrLeafExtra = bp_beefy::BeefyMmrLeafExtraOf>;
+/// BEEFY MMR proof type used by the pallet
+pub type BridgedMmrProof = bp_beefy::MmrProofOf>;
+/// MMR leaf type, used by configured bridged chain.
+pub type BridgedBeefyMmrLeaf = bp_beefy::BeefyMmrLeafOf>;
+/// Imported commitment data, stored by the pallet.
+pub type ImportedCommitment = bp_beefy::ImportedCommitment<
+ BridgedBlockNumber,
+ BridgedBlockHash,
+ BridgedMmrHash,
+>;
+
+/// Some high level info about the imported commitments.
+#[derive(codec::Encode, codec::Decode, scale_info::TypeInfo)]
+pub struct ImportedCommitmentsInfoData {
+ /// Best known block number, provided in a BEEFY commitment. However this is not
+ /// the best proven block. The best proven block is this block's parent.
+ best_block_number: BlockNumber,
+ /// The head of the `ImportedBlockNumbers` ring buffer.
+ next_block_number_index: u32,
+}
+
+#[frame_support::pallet(dev_mode)]
+pub mod pallet {
+ use super::*;
+ use bp_runtime::{BasicOperatingMode, OwnedBridgeModule};
+ use frame_support::pallet_prelude::*;
+ use frame_system::pallet_prelude::*;
+
+ #[pallet::config]
+ pub trait Config: frame_system::Config {
+ /// The upper bound on the number of requests allowed by the pallet.
+ ///
+ /// A request refers to an action which writes a header to storage.
+ ///
+ /// Once this bound is reached the pallet will reject all commitments
+ /// until the request count has decreased.
+ #[pallet::constant]
+ type MaxRequests: Get;
+
+ /// Maximal number of imported commitments to keep in the storage.
+ ///
+ /// The setting is there to prevent growing the on-chain state indefinitely. Note
+ /// the setting does not relate to block numbers - we will simply keep as much items
+ /// in the storage, so it doesn't guarantee any fixed timeframe for imported commitments.
+ #[pallet::constant]
+ type CommitmentsToKeep: Get;
+
+ /// The chain we are bridging to here.
+ type BridgedChain: ChainWithBeefy;
+ }
+
+ #[pallet::pallet]
+ #[pallet::without_storage_info]
+ pub struct Pallet(PhantomData<(T, I)>);
+
+ #[pallet::hooks]
+ impl, I: 'static> Hooks> for Pallet {
+ fn on_initialize(_n: BlockNumberFor) -> frame_support::weights::Weight {
+ >::mutate(|count| *count = count.saturating_sub(1));
+
+ Weight::from_parts(0, 0)
+ .saturating_add(T::DbWeight::get().reads(1))
+ .saturating_add(T::DbWeight::get().writes(1))
+ }
+ }
+
+ impl, I: 'static> OwnedBridgeModule for Pallet {
+ const LOG_TARGET: &'static str = LOG_TARGET;
+ type OwnerStorage = PalletOwner;
+ type OperatingMode = BasicOperatingMode;
+ type OperatingModeStorage = PalletOperatingMode;
+ }
+
+ #[pallet::call]
+ impl, I: 'static> Pallet
+ where
+ BridgedMmrHashing: 'static + Send + Sync,
+ {
+ /// Initialize pallet with BEEFY authority set and best known finalized block number.
+ #[pallet::call_index(0)]
+ #[pallet::weight((T::DbWeight::get().reads_writes(2, 3), DispatchClass::Operational))]
+ pub fn initialize(
+ origin: OriginFor,
+ init_data: InitializationDataOf,
+ ) -> DispatchResult {
+ Self::ensure_owner_or_root(origin)?;
+
+ let is_initialized = >::exists();
+ ensure!(!is_initialized, >::AlreadyInitialized);
+
+ log::info!(target: LOG_TARGET, "Initializing bridge BEEFY pallet: {:?}", init_data);
+ Ok(initialize::(init_data)?)
+ }
+
+ /// Change `PalletOwner`.
+ ///
+ /// May only be called either by root, or by `PalletOwner`.
+ #[pallet::call_index(1)]
+ #[pallet::weight((T::DbWeight::get().reads_writes(1, 1), DispatchClass::Operational))]
+ pub fn set_owner(origin: OriginFor, new_owner: Option) -> DispatchResult {
+ >::set_owner(origin, new_owner)
+ }
+
+ /// Halt or resume all pallet operations.
+ ///
+ /// May only be called either by root, or by `PalletOwner`.
+ #[pallet::call_index(2)]
+ #[pallet::weight((T::DbWeight::get().reads_writes(1, 1), DispatchClass::Operational))]
+ pub fn set_operating_mode(
+ origin: OriginFor,
+ operating_mode: BasicOperatingMode,
+ ) -> DispatchResult {
+ >::set_operating_mode(origin, operating_mode)
+ }
+
+ /// Submit a commitment generated by BEEFY authority set.
+ ///
+ /// It will use the underlying storage pallet to fetch information about the current
+ /// authority set and best finalized block number in order to verify that the commitment
+ /// is valid.
+ ///
+ /// If successful in verification, it will update the underlying storage with the data
+ /// provided in the newly submitted commitment.
+ #[pallet::call_index(3)]
+ #[pallet::weight(0)]
+ pub fn submit_commitment(
+ origin: OriginFor,
+ commitment: BridgedBeefySignedCommitment,
+ validator_set: BridgedBeefyAuthoritySet,
+ mmr_leaf: Box>,
+ mmr_proof: BridgedMmrProof,
+ ) -> DispatchResult
+ where
+ BridgedBeefySignedCommitment: Clone,
+ {
+ Self::ensure_not_halted().map_err(Error::::BridgeModule)?;
+ ensure_signed(origin)?;
+
+ ensure!(Self::request_count() < T::MaxRequests::get(), >::TooManyRequests);
+
+ // Ensure that the commitment is for a better block.
+ let commitments_info =
+ ImportedCommitmentsInfo::::get().ok_or(Error::::NotInitialized)?;
+ ensure!(
+ commitment.commitment.block_number > commitments_info.best_block_number,
+ Error::::OldCommitment
+ );
+
+ // Verify commitment and mmr leaf.
+ let current_authority_set_info = CurrentAuthoritySetInfo::::get();
+ let mmr_root = utils::verify_commitment::(
+ &commitment,
+ ¤t_authority_set_info,
+ &validator_set,
+ )?;
+ utils::verify_beefy_mmr_leaf::(&mmr_leaf, mmr_proof, mmr_root)?;
+
+ // Update request count.
+ RequestCount::::mutate(|count| *count += 1);
+ // Update authority set if needed.
+ if mmr_leaf.beefy_next_authority_set.id > current_authority_set_info.id {
+ CurrentAuthoritySetInfo::::put(mmr_leaf.beefy_next_authority_set);
+ }
+
+ // Import commitment.
+ let block_number_index = commitments_info.next_block_number_index;
+ let to_prune = ImportedBlockNumbers::::try_get(block_number_index);
+ ImportedCommitments::::insert(
+ commitment.commitment.block_number,
+ ImportedCommitment:: {
+ parent_number_and_hash: mmr_leaf.parent_number_and_hash,
+ mmr_root,
+ },
+ );
+ ImportedBlockNumbers::::insert(
+ block_number_index,
+ commitment.commitment.block_number,
+ );
+ ImportedCommitmentsInfo::::put(ImportedCommitmentsInfoData {
+ best_block_number: commitment.commitment.block_number,
+ next_block_number_index: (block_number_index + 1) % T::CommitmentsToKeep::get(),
+ });
+ if let Ok(old_block_number) = to_prune {
+ log::debug!(
+ target: LOG_TARGET,
+ "Pruning commitment for old block: {:?}.",
+ old_block_number
+ );
+ ImportedCommitments::::remove(old_block_number);
+ }
+
+ log::info!(
+ target: LOG_TARGET,
+ "Successfully imported commitment for block {:?}",
+ commitment.commitment.block_number,
+ );
+
+ Ok(())
+ }
+ }
+
+ /// The current number of requests which have written to storage.
+ ///
+ /// If the `RequestCount` hits `MaxRequests`, no more calls will be allowed to the pallet until
+ /// the request capacity is increased.
+ ///
+ /// The `RequestCount` is decreased by one at the beginning of every block. This is to ensure
+ /// that the pallet can always make progress.
+ #[pallet::storage]
+ #[pallet::getter(fn request_count)]
+ pub type RequestCount, I: 'static = ()> = StorageValue<_, u32, ValueQuery>;
+
+ /// High level info about the imported commitments.
+ ///
+ /// Contains the following info:
+ /// - best known block number of the bridged chain, finalized by BEEFY
+ /// - the head of the `ImportedBlockNumbers` ring buffer
+ #[pallet::storage]
+ pub type ImportedCommitmentsInfo, I: 'static = ()> =
+ StorageValue<_, ImportedCommitmentsInfoData>>;
+
+ /// A ring buffer containing the block numbers of the commitments that we have imported,
+ /// ordered by the insertion time.
+ #[pallet::storage]
+ pub(super) type ImportedBlockNumbers, I: 'static = ()> =
+ StorageMap<_, Identity, u32, BridgedBlockNumber>;
+
+ /// All the commitments that we have imported and haven't been pruned yet.
+ #[pallet::storage]
+ pub type ImportedCommitments, I: 'static = ()> =
+ StorageMap<_, Blake2_128Concat, BridgedBlockNumber, ImportedCommitment>;
+
+ /// The current BEEFY authority set at the bridged chain.
+ #[pallet::storage]
+ pub type CurrentAuthoritySetInfo, I: 'static = ()> =
+ StorageValue<_, BridgedBeefyAuthoritySetInfo, ValueQuery>;
+
+ /// Optional pallet owner.
+ ///
+ /// Pallet owner has the right to halt all pallet operations and then resume it. If it is
+ /// `None`, then there are no direct ways to halt/resume pallet operations, but other
+ /// runtime methods may still be used to do that (i.e. `democracy::referendum` to update halt
+ /// flag directly or calling `halt_operations`).
+ #[pallet::storage]
+ pub type PalletOwner, I: 'static = ()> =
+ StorageValue<_, T::AccountId, OptionQuery>;
+
+ /// The current operating mode of the pallet.
+ ///
+ /// Depending on the mode either all, or no transactions will be allowed.
+ #[pallet::storage]
+ pub type PalletOperatingMode, I: 'static = ()> =
+ StorageValue<_, BasicOperatingMode, ValueQuery>;
+
+ #[pallet::genesis_config]
+ #[derive(frame_support::DefaultNoBound)]
+ pub struct GenesisConfig, I: 'static = ()> {
+ /// Optional module owner account.
+ pub owner: Option,
+ /// Optional module initialization data.
+ pub init_data: Option>,
+ }
+
+ #[pallet::genesis_build]
+ impl, I: 'static> BuildGenesisConfig for GenesisConfig {
+ fn build(&self) {
+ if let Some(ref owner) = self.owner {
+ >::put(owner);
+ }
+
+ if let Some(init_data) = self.init_data.clone() {
+ initialize::(init_data)
+ .expect("invalid initialization data of BEEFY bridge pallet");
+ } else {
+ // Since the bridge hasn't been initialized we shouldn't allow anyone to perform
+ // transactions.
+ >::put(BasicOperatingMode::Halted);
+ }
+ }
+ }
+
+ #[pallet::error]
+ pub enum Error {
+ /// The pallet has not been initialized yet.
+ NotInitialized,
+ /// The pallet has already been initialized.
+ AlreadyInitialized,
+ /// Invalid initial authority set.
+ InvalidInitialAuthoritySet,
+ /// There are too many requests for the current window to handle.
+ TooManyRequests,
+ /// The imported commitment is older than the best commitment known to the pallet.
+ OldCommitment,
+ /// The commitment is signed by unknown validator set.
+ InvalidCommitmentValidatorSetId,
+ /// The id of the provided validator set is invalid.
+ InvalidValidatorSetId,
+ /// The number of signatures in the commitment is invalid.
+ InvalidCommitmentSignaturesLen,
+ /// The number of validator ids provided is invalid.
+ InvalidValidatorSetLen,
+ /// There aren't enough correct signatures in the commitment to finalize the block.
+ NotEnoughCorrectSignatures,
+ /// MMR root is missing from the commitment.
+ MmrRootMissingFromCommitment,
+ /// MMR proof verification has failed.
+ MmrProofVerificationFailed,
+ /// The validators are not matching the merkle tree root of the authority set.
+ InvalidValidatorSetRoot,
+ /// Error generated by the `OwnedBridgeModule` trait.
+ BridgeModule(bp_runtime::OwnedBridgeModuleError),
+ }
+
+ /// Initialize pallet with given parameters.
+ pub(super) fn initialize, I: 'static>(
+ init_data: InitializationDataOf,
+ ) -> Result<(), Error> {
+ if init_data.authority_set.len == 0 {
+ return Err(Error::::InvalidInitialAuthoritySet)
+ }
+ CurrentAuthoritySetInfo::::put(init_data.authority_set);
+
+ >::put(init_data.operating_mode);
+ ImportedCommitmentsInfo::::put(ImportedCommitmentsInfoData {
+ best_block_number: init_data.best_block_number,
+ next_block_number_index: 0,
+ });
+
+ Ok(())
+ }
+}
+
+#[cfg(test)]
+mod tests {
+ use super::*;
+ use bp_runtime::{BasicOperatingMode, OwnedBridgeModuleError};
+ use bp_test_utils::generate_owned_bridge_module_tests;
+ use frame_support::{assert_noop, assert_ok, traits::Get};
+ use mock::*;
+ use mock_chain::*;
+ use sp_consensus_beefy::mmr::BeefyAuthoritySet;
+ use sp_runtime::DispatchError;
+
+ fn next_block() {
+ use frame_support::traits::OnInitialize;
+
+ let current_number = frame_system::Pallet::::block_number();
+ frame_system::Pallet::::set_block_number(current_number + 1);
+ let _ = Pallet::::on_initialize(current_number);
+ }
+
+ fn import_header_chain(headers: Vec) {
+ for header in headers {
+ if header.commitment.is_some() {
+ assert_ok!(import_commitment(header));
+ }
+ }
+ }
+
+ #[test]
+ fn fails_to_initialize_if_already_initialized() {
+ run_test_with_initialize(32, || {
+ assert_noop!(
+ Pallet::::initialize(
+ RuntimeOrigin::root(),
+ InitializationData {
+ operating_mode: BasicOperatingMode::Normal,
+ best_block_number: 0,
+ authority_set: BeefyAuthoritySet {
+ id: 0,
+ len: 1,
+ keyset_commitment: [0u8; 32].into()
+ }
+ }
+ ),
+ Error::::AlreadyInitialized,
+ );
+ });
+ }
+
+ #[test]
+ fn fails_to_initialize_if_authority_set_is_empty() {
+ run_test(|| {
+ assert_noop!(
+ Pallet::::initialize(
+ RuntimeOrigin::root(),
+ InitializationData {
+ operating_mode: BasicOperatingMode::Normal,
+ best_block_number: 0,
+ authority_set: BeefyAuthoritySet {
+ id: 0,
+ len: 0,
+ keyset_commitment: [0u8; 32].into()
+ }
+ }
+ ),
+ Error::::InvalidInitialAuthoritySet,
+ );
+ });
+ }
+
+ #[test]
+ fn fails_to_import_commitment_if_halted() {
+ run_test_with_initialize(1, || {
+ assert_ok!(Pallet::::set_operating_mode(
+ RuntimeOrigin::root(),
+ BasicOperatingMode::Halted
+ ));
+ assert_noop!(
+ import_commitment(ChainBuilder::new(1).append_finalized_header().to_header()),
+ Error::::BridgeModule(OwnedBridgeModuleError::Halted),
+ );
+ })
+ }
+
+ #[test]
+ fn fails_to_import_commitment_if_too_many_requests() {
+ run_test_with_initialize(1, || {
+ let max_requests = <::MaxRequests as Get>::get() as u64;
+ let mut chain = ChainBuilder::new(1);
+ for _ in 0..max_requests + 2 {
+ chain = chain.append_finalized_header();
+ }
+
+ // import `max_request` headers
+ for i in 0..max_requests {
+ assert_ok!(import_commitment(chain.header(i + 1)));
+ }
+
+ // try to import next header: it fails because we are no longer accepting commitments
+ assert_noop!(
+ import_commitment(chain.header(max_requests + 1)),
+ Error::::TooManyRequests,
+ );
+
+ // when next block is "started", we allow import of next header
+ next_block();
+ assert_ok!(import_commitment(chain.header(max_requests + 1)));
+
+ // but we can't import two headers until next block and so on
+ assert_noop!(
+ import_commitment(chain.header(max_requests + 2)),
+ Error::::TooManyRequests,
+ );
+ })
+ }
+
+ #[test]
+ fn fails_to_import_commitment_if_not_initialized() {
+ run_test(|| {
+ assert_noop!(
+ import_commitment(ChainBuilder::new(1).append_finalized_header().to_header()),
+ Error::::NotInitialized,
+ );
+ })
+ }
+
+ #[test]
+ fn submit_commitment_works_with_long_chain_with_handoffs() {
+ run_test_with_initialize(3, || {
+ let chain = ChainBuilder::new(3)
+ .append_finalized_header()
+ .append_default_headers(16) // 2..17
+ .append_finalized_header() // 18
+ .append_default_headers(16) // 19..34
+ .append_handoff_header(9) // 35
+ .append_default_headers(8) // 36..43
+ .append_finalized_header() // 44
+ .append_default_headers(8) // 45..52
+ .append_handoff_header(17) // 53
+ .append_default_headers(4) // 54..57
+ .append_finalized_header() // 58
+ .append_default_headers(4); // 59..63
+ import_header_chain(chain.to_chain());
+
+ assert_eq!(
+ ImportedCommitmentsInfo::::get().unwrap().best_block_number,
+ 58
+ );
+ assert_eq!(CurrentAuthoritySetInfo::::get().id, 2);
+ assert_eq!(CurrentAuthoritySetInfo::::get().len, 17);
+
+ let imported_commitment = ImportedCommitments::::get(58).unwrap();
+ assert_eq!(
+ imported_commitment,
+ bp_beefy::ImportedCommitment {
+ parent_number_and_hash: (57, chain.header(57).header.hash()),
+ mmr_root: chain.header(58).mmr_root,
+ },
+ );
+ })
+ }
+
+ #[test]
+ fn commitment_pruning_works() {
+ run_test_with_initialize(3, || {
+ let commitments_to_keep = >::CommitmentsToKeep::get();
+ let commitments_to_import: Vec = ChainBuilder::new(3)
+ .append_finalized_headers(commitments_to_keep as usize + 2)
+ .to_chain();
+
+ // import exactly `CommitmentsToKeep` commitments
+ for index in 0..commitments_to_keep {
+ next_block();
+ import_commitment(commitments_to_import[index as usize].clone())
+ .expect("must succeed");
+ assert_eq!(
+ ImportedCommitmentsInfo::::get().unwrap().next_block_number_index,
+ (index + 1) % commitments_to_keep
+ );
+ }
+
+ // ensure that all commitments are in the storage
+ assert_eq!(
+ ImportedCommitmentsInfo::::get().unwrap().best_block_number,
+ commitments_to_keep as TestBridgedBlockNumber
+ );
+ assert_eq!(
+ ImportedCommitmentsInfo::::get().unwrap().next_block_number_index,
+ 0
+ );
+ for index in 0..commitments_to_keep {
+ assert!(ImportedCommitments::::get(
+ index as TestBridgedBlockNumber + 1
+ )
+ .is_some());
+ assert_eq!(
+ ImportedBlockNumbers::::get(index),
+ Some(Into::into(index + 1)),
+ );
+ }
+
+ // import next commitment
+ next_block();
+ import_commitment(commitments_to_import[commitments_to_keep as usize].clone())
+ .expect("must succeed");
+ assert_eq!(
+ ImportedCommitmentsInfo::::get().unwrap().next_block_number_index,
+ 1
+ );
+ assert!(ImportedCommitments::::get(
+ commitments_to_keep as TestBridgedBlockNumber + 1
+ )
+ .is_some());
+ assert_eq!(
+ ImportedBlockNumbers::::get(0),
+ Some(Into::into(commitments_to_keep + 1)),
+ );
+ // the side effect of the import is that the commitment#1 is pruned
+ assert!(ImportedCommitments::::get(1).is_none());
+
+ // import next commitment
+ next_block();
+ import_commitment(commitments_to_import[commitments_to_keep as usize + 1].clone())
+ .expect("must succeed");
+ assert_eq!(
+ ImportedCommitmentsInfo::::get().unwrap().next_block_number_index,
+ 2
+ );
+ assert!(ImportedCommitments::::get(
+ commitments_to_keep as TestBridgedBlockNumber + 2
+ )
+ .is_some());
+ assert_eq!(
+ ImportedBlockNumbers::::get(1),
+ Some(Into::into(commitments_to_keep + 2)),
+ );
+ // the side effect of the import is that the commitment#2 is pruned
+ assert!(ImportedCommitments::::get(1).is_none());
+ assert!(ImportedCommitments::::get(2).is_none());
+ });
+ }
+
+ generate_owned_bridge_module_tests!(BasicOperatingMode::Normal, BasicOperatingMode::Halted);
+}
diff --git a/bridges/modules/beefy/src/mock.rs b/bridges/modules/beefy/src/mock.rs
new file mode 100644
index 0000000000000000000000000000000000000000..c99566b6b06d1855319d614f4f4ddfbf2fb1918b
--- /dev/null
+++ b/bridges/modules/beefy/src/mock.rs
@@ -0,0 +1,193 @@
+// Copyright 2019-2021 Parity Technologies (UK) Ltd.
+// This file is part of Parity Bridges Common.
+
+// Parity Bridges Common is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+
+// Parity Bridges Common is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License
+// along with Parity Bridges Common. If not, see .
+
+use crate as beefy;
+use crate::{
+ utils::get_authorities_mmr_root, BridgedBeefyAuthoritySet, BridgedBeefyAuthoritySetInfo,
+ BridgedBeefyCommitmentHasher, BridgedBeefyMmrLeafExtra, BridgedBeefySignedCommitment,
+ BridgedMmrHash, BridgedMmrHashing, BridgedMmrProof,
+};
+
+use bp_beefy::{BeefyValidatorSignatureOf, ChainWithBeefy, Commitment, MmrDataOrHash};
+use bp_runtime::{BasicOperatingMode, Chain, ChainId};
+use codec::Encode;
+use frame_support::{construct_runtime, derive_impl, weights::Weight};
+use sp_core::{sr25519::Signature, Pair};
+use sp_runtime::{
+ testing::{Header, H256},
+ traits::{BlakeTwo256, Hash},
+};
+
+pub use sp_consensus_beefy::ecdsa_crypto::{AuthorityId as BeefyId, Pair as BeefyPair};
+use sp_core::crypto::Wraps;
+use sp_runtime::traits::Keccak256;
+
+pub type TestAccountId = u64;
+pub type TestBridgedBlockNumber = u64;
+pub type TestBridgedBlockHash = H256;
+pub type TestBridgedHeader = Header;
+pub type TestBridgedAuthoritySetInfo = BridgedBeefyAuthoritySetInfo;
+pub type TestBridgedValidatorSet = BridgedBeefyAuthoritySet;
+pub type TestBridgedCommitment = BridgedBeefySignedCommitment;
+pub type TestBridgedValidatorSignature = BeefyValidatorSignatureOf;
+pub type TestBridgedCommitmentHasher = BridgedBeefyCommitmentHasher;
+pub type TestBridgedMmrHashing = BridgedMmrHashing;
+pub type TestBridgedMmrHash = BridgedMmrHash;
+pub type TestBridgedBeefyMmrLeafExtra = BridgedBeefyMmrLeafExtra;
+pub type TestBridgedMmrProof = BridgedMmrProof;
+pub type TestBridgedRawMmrLeaf = sp_consensus_beefy::mmr::MmrLeaf<
+ TestBridgedBlockNumber,
+ TestBridgedBlockHash,
+ TestBridgedMmrHash,
+ TestBridgedBeefyMmrLeafExtra,
+>;
+pub type TestBridgedMmrNode = MmrDataOrHash;
+
+type Block = frame_system::mocking::MockBlock;
+
+construct_runtime! {
+ pub enum TestRuntime
+ {
+ System: frame_system::{Pallet, Call, Config, Storage, Event},
+ Beefy: beefy::{Pallet},
+ }
+}
+
+#[derive_impl(frame_system::config_preludes::TestDefaultConfig as frame_system::DefaultConfig)]
+impl frame_system::Config for TestRuntime {
+ type Block = Block;
+}
+
+impl beefy::Config for TestRuntime {
+ type MaxRequests = frame_support::traits::ConstU32<16>;
+ type BridgedChain = TestBridgedChain;
+ type CommitmentsToKeep = frame_support::traits::ConstU32<16>;
+}
+
+#[derive(Debug)]
+pub struct TestBridgedChain;
+
+impl Chain for TestBridgedChain {
+ const ID: ChainId = *b"tbch";
+
+ type BlockNumber = TestBridgedBlockNumber;
+ type Hash = H256;
+ type Hasher = BlakeTwo256;
+ type Header = sp_runtime::testing::Header;
+
+ type AccountId = TestAccountId;
+ type Balance = u64;
+ type Nonce = u64;
+ type Signature = Signature;
+
+ fn max_extrinsic_size() -> u32 {
+ unreachable!()
+ }
+ fn max_extrinsic_weight() -> Weight {
+ unreachable!()
+ }
+}
+
+impl ChainWithBeefy for TestBridgedChain {
+ type CommitmentHasher = Keccak256;
+ type MmrHashing = Keccak256;
+ type MmrHash = ::Output;
+ type BeefyMmrLeafExtra = ();
+ type AuthorityId = BeefyId;
+ type AuthorityIdToMerkleLeaf = pallet_beefy_mmr::BeefyEcdsaToEthereum;
+}
+
+/// Run test within test runtime.
+pub fn run_test(test: impl FnOnce() -> T) -> T {
+ sp_io::TestExternalities::new(Default::default()).execute_with(test)
+}
+
+/// Initialize pallet and run test.
+pub fn run_test_with_initialize(initial_validators_count: u32, test: impl FnOnce() -> T) -> T {
+ run_test(|| {
+ let validators = validator_ids(0, initial_validators_count);
+ let authority_set = authority_set_info(0, &validators);
+
+ crate::Pallet::::initialize(
+ RuntimeOrigin::root(),
+ bp_beefy::InitializationData {
+ operating_mode: BasicOperatingMode::Normal,
+ best_block_number: 0,
+ authority_set,
+ },
+ )
+ .expect("initialization data is correct");
+
+ test()
+ })
+}
+
+/// Import given commitment.
+pub fn import_commitment(
+ header: crate::mock_chain::HeaderAndCommitment,
+) -> sp_runtime::DispatchResult {
+ crate::Pallet::::submit_commitment(
+ RuntimeOrigin::signed(1),
+ header
+ .commitment
+ .expect("thou shall not call import_commitment on header without commitment"),
+ header.validator_set,
+ Box::new(header.leaf),
+ header.leaf_proof,
+ )
+}
+
+pub fn validator_pairs(index: u32, count: u32) -> Vec {
+ (index..index + count)
+ .map(|index| {
+ let mut seed = [1u8; 32];
+ seed[0..8].copy_from_slice(&(index as u64).encode());
+ BeefyPair::from_seed(&seed)
+ })
+ .collect()
+}
+
+/// Return identifiers of validators, starting at given index.
+pub fn validator_ids(index: u32, count: u32) -> Vec {
+ validator_pairs(index, count).into_iter().map(|pair| pair.public()).collect()
+}
+
+pub fn authority_set_info(id: u64, validators: &[BeefyId]) -> TestBridgedAuthoritySetInfo {
+ let merkle_root = get_authorities_mmr_root::(validators.iter());
+
+ TestBridgedAuthoritySetInfo { id, len: validators.len() as u32, keyset_commitment: merkle_root }
+}
+
+/// Sign BEEFY commitment.
+pub fn sign_commitment(
+ commitment: Commitment,
+ validator_pairs: &[BeefyPair],
+ signature_count: usize,
+) -> TestBridgedCommitment {
+ let total_validators = validator_pairs.len();
+ let random_validators =
+ rand::seq::index::sample(&mut rand::thread_rng(), total_validators, signature_count);
+
+ let commitment_hash = TestBridgedCommitmentHasher::hash(&commitment.encode());
+ let mut signatures = vec![None; total_validators];
+ for validator_idx in random_validators.iter() {
+ let validator = &validator_pairs[validator_idx];
+ signatures[validator_idx] =
+ Some(validator.as_inner_ref().sign_prehashed(commitment_hash.as_fixed_bytes()).into());
+ }
+
+ TestBridgedCommitment { commitment, signatures }
+}
diff --git a/bridges/modules/beefy/src/mock_chain.rs b/bridges/modules/beefy/src/mock_chain.rs
new file mode 100644
index 0000000000000000000000000000000000000000..c83907f8395684d03cc62892e519565fb72237f7
--- /dev/null
+++ b/bridges/modules/beefy/src/mock_chain.rs
@@ -0,0 +1,299 @@
+// Copyright 2019-2021 Parity Technologies (UK) Ltd.
+// This file is part of Parity Bridges Common.
+
+// Parity Bridges Common is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+
+// Parity Bridges Common is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License
+// along with Parity Bridges Common. If not, see