From 3938c1cb62be51eb47eb9891432660ecdc7f93db Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Alexander=20Thei=C3=9Fen?= <alex.theissen@me.com>
Date: Tue, 1 Feb 2022 20:38:02 +0100
Subject: [PATCH] Release `pallet-contracts-primitives` (#10772)

* Bump sp-storage

* Bump sp-rpc

* Bump sp-io

* Bump sp-trie

* Bump sp-state-machine

* Bump sp-externalities

* Bump sp-keystore

* Bump sp-application-crypto

* Bump pallet-contracts-primitives

* Bump sp-core

* Bump sp-runtime-interface

* Bump sp-wasm-interface

* Bump sp-runtime

* Bump sp-storage

* Update lock file

* Revert "Bump sp-storage"

This reverts commit f86c6db1ae334e28207b658fd90714ade0332e3b.

* Update lock file
---
 substrate/Cargo.lock                          | 26 +++++++++----------
 substrate/bin/node-template/node/Cargo.toml   |  4 +--
 .../node-template/pallets/template/Cargo.toml |  6 ++---
 .../bin/node-template/runtime/Cargo.toml      |  4 +--
 substrate/bin/node/bench/Cargo.toml           |  8 +++---
 substrate/bin/node/cli/Cargo.toml             |  8 +++---
 substrate/bin/node/executor/Cargo.toml        | 14 +++++-----
 substrate/bin/node/inspect/Cargo.toml         |  4 +--
 substrate/bin/node/primitives/Cargo.toml      |  6 ++---
 substrate/bin/node/rpc/Cargo.toml             |  4 +--
 substrate/bin/node/runtime/Cargo.toml         |  8 +++---
 substrate/bin/node/testing/Cargo.toml         |  6 ++---
 .../bin/utils/chain-spec-builder/Cargo.toml   |  4 +--
 substrate/client/allocator/Cargo.toml         |  4 +--
 substrate/client/api/Cargo.toml               | 14 +++++-----
 .../client/authority-discovery/Cargo.toml     |  6 ++---
 substrate/client/basic-authorship/Cargo.toml  |  4 +--
 substrate/client/beefy/Cargo.toml             |  8 +++---
 substrate/client/beefy/rpc/Cargo.toml         |  4 +--
 substrate/client/block-builder/Cargo.toml     |  6 ++---
 substrate/client/chain-spec/Cargo.toml        |  4 +--
 substrate/client/cli/Cargo.toml               |  6 ++---
 substrate/client/consensus/aura/Cargo.toml    |  8 +++---
 substrate/client/consensus/babe/Cargo.toml    | 10 +++----
 .../client/consensus/babe/rpc/Cargo.toml      |  8 +++---
 substrate/client/consensus/common/Cargo.toml  |  6 ++---
 substrate/client/consensus/epochs/Cargo.toml  |  2 +-
 .../client/consensus/manual-seal/Cargo.toml   |  6 ++---
 substrate/client/consensus/pow/Cargo.toml     |  4 +--
 substrate/client/consensus/slots/Cargo.toml   |  6 ++---
 substrate/client/consensus/uncles/Cargo.toml  |  2 +-
 substrate/client/db/Cargo.toml                |  8 +++---
 substrate/client/executor/Cargo.toml          | 16 ++++++------
 substrate/client/executor/common/Cargo.toml   |  4 +--
 .../client/executor/runtime-test/Cargo.toml   |  6 ++---
 substrate/client/executor/wasmi/Cargo.toml    |  6 ++---
 substrate/client/executor/wasmtime/Cargo.toml |  8 +++---
 substrate/client/finality-grandpa/Cargo.toml  |  8 +++---
 .../client/finality-grandpa/rpc/Cargo.toml    |  6 ++---
 substrate/client/informant/Cargo.toml         |  2 +-
 substrate/client/keystore/Cargo.toml          |  6 ++---
 substrate/client/network-gossip/Cargo.toml    |  2 +-
 substrate/client/network/Cargo.toml           |  4 +--
 substrate/client/network/test/Cargo.toml      |  4 +--
 substrate/client/offchain/Cargo.toml          |  4 +--
 substrate/client/rpc-api/Cargo.toml           |  6 ++---
 substrate/client/rpc/Cargo.toml               | 10 +++----
 substrate/client/service/Cargo.toml           | 16 ++++++------
 substrate/client/service/test/Cargo.toml      | 12 ++++-----
 substrate/client/state-db/Cargo.toml          |  2 +-
 substrate/client/sync-state-rpc/Cargo.toml    |  2 +-
 substrate/client/tracing/Cargo.toml           |  6 ++---
 substrate/client/transaction-pool/Cargo.toml  |  4 +--
 .../client/transaction-pool/api/Cargo.toml    |  2 +-
 substrate/frame/assets/Cargo.toml             |  6 ++---
 substrate/frame/atomic-swap/Cargo.toml        |  6 ++---
 substrate/frame/aura/Cargo.toml               |  8 +++---
 .../frame/authority-discovery/Cargo.toml      |  8 +++---
 substrate/frame/authorship/Cargo.toml         |  6 ++---
 substrate/frame/babe/Cargo.toml               |  8 +++---
 substrate/frame/bags-list/Cargo.toml          | 10 +++----
 .../frame/bags-list/remote-tests/Cargo.toml   |  6 ++---
 substrate/frame/balances/Cargo.toml           |  6 ++---
 substrate/frame/beefy-mmr/Cargo.toml          |  6 ++---
 substrate/frame/beefy/Cargo.toml              |  6 ++---
 substrate/frame/benchmarking/Cargo.toml       | 12 ++++-----
 substrate/frame/bounties/Cargo.toml           |  6 ++---
 substrate/frame/child-bounties/Cargo.toml     |  6 ++---
 substrate/frame/collective/Cargo.toml         |  6 ++---
 substrate/frame/contracts/Cargo.toml          |  8 +++---
 substrate/frame/contracts/common/Cargo.toml   |  8 +++---
 substrate/frame/contracts/rpc/Cargo.toml      |  8 +++---
 .../contracts/rpc/runtime-api/Cargo.toml      |  4 +--
 substrate/frame/democracy/Cargo.toml          |  6 ++---
 .../election-provider-multi-phase/Cargo.toml  | 10 +++----
 .../election-provider-support/Cargo.toml      |  6 ++---
 substrate/frame/elections-phragmen/Cargo.toml |  8 +++---
 substrate/frame/examples/basic/Cargo.toml     |  6 ++---
 .../frame/examples/offchain-worker/Cargo.toml |  8 +++---
 substrate/frame/examples/parallel/Cargo.toml  |  6 ++---
 substrate/frame/executive/Cargo.toml          | 10 +++----
 substrate/frame/gilt/Cargo.toml               |  6 ++---
 substrate/frame/grandpa/Cargo.toml            |  8 +++---
 substrate/frame/identity/Cargo.toml           |  6 ++---
 substrate/frame/im-online/Cargo.toml          |  8 +++---
 substrate/frame/indices/Cargo.toml            |  6 ++---
 substrate/frame/lottery/Cargo.toml            |  6 ++---
 substrate/frame/membership/Cargo.toml         |  6 ++---
 .../frame/merkle-mountain-range/Cargo.toml    |  6 ++---
 .../primitives/Cargo.toml                     |  4 +--
 .../merkle-mountain-range/rpc/Cargo.toml      |  4 +--
 substrate/frame/multisig/Cargo.toml           |  6 ++---
 substrate/frame/nicks/Cargo.toml              |  6 ++---
 substrate/frame/node-authorization/Cargo.toml |  6 ++---
 substrate/frame/offences/Cargo.toml           |  6 ++---
 .../frame/offences/benchmarking/Cargo.toml    |  6 ++---
 substrate/frame/preimage/Cargo.toml           |  8 +++---
 substrate/frame/proxy/Cargo.toml              |  6 ++---
 .../randomness-collective-flip/Cargo.toml     |  6 ++---
 substrate/frame/recovery/Cargo.toml           |  6 ++---
 substrate/frame/scheduler/Cargo.toml          |  6 ++---
 substrate/frame/scored-pool/Cargo.toml        |  6 ++---
 substrate/frame/session/Cargo.toml            |  8 +++---
 .../frame/session/benchmarking/Cargo.toml     |  6 ++---
 substrate/frame/society/Cargo.toml            |  6 ++---
 substrate/frame/staking/Cargo.toml            |  8 +++---
 .../frame/staking/reward-curve/Cargo.toml     |  2 +-
 substrate/frame/sudo/Cargo.toml               |  6 ++---
 substrate/frame/support/Cargo.toml            |  8 +++---
 substrate/frame/support/test/Cargo.toml       |  8 +++---
 .../support/test/compile_pass/Cargo.toml      |  4 +--
 substrate/frame/system/Cargo.toml             |  8 +++---
 .../frame/system/benchmarking/Cargo.toml      |  6 ++---
 substrate/frame/timestamp/Cargo.toml          |  8 +++---
 substrate/frame/tips/Cargo.toml               |  8 +++---
 .../frame/transaction-payment/Cargo.toml      |  6 ++---
 .../asset-tx-payment/Cargo.toml               |  8 +++---
 .../frame/transaction-payment/rpc/Cargo.toml  |  6 ++---
 .../rpc/runtime-api/Cargo.toml                |  2 +-
 .../frame/transaction-storage/Cargo.toml      |  6 ++---
 substrate/frame/treasury/Cargo.toml           |  6 ++---
 substrate/frame/try-runtime/Cargo.toml        |  2 +-
 substrate/frame/uniques/Cargo.toml            |  6 ++---
 substrate/frame/utility/Cargo.toml            |  8 +++---
 substrate/frame/vesting/Cargo.toml            |  6 ++---
 substrate/primitives/api/Cargo.toml           |  6 ++---
 substrate/primitives/api/test/Cargo.toml      |  6 ++---
 .../primitives/application-crypto/Cargo.toml  |  6 ++---
 .../application-crypto/test/Cargo.toml        |  8 +++---
 .../primitives/authority-discovery/Cargo.toml |  4 +--
 substrate/primitives/authorship/Cargo.toml    |  2 +-
 substrate/primitives/beefy/Cargo.toml         |  8 +++---
 substrate/primitives/block-builder/Cargo.toml |  2 +-
 substrate/primitives/blockchain/Cargo.toml    |  4 +--
 .../primitives/consensus/aura/Cargo.toml      |  4 +--
 .../primitives/consensus/babe/Cargo.toml      |  8 +++---
 .../primitives/consensus/common/Cargo.toml    |  6 ++---
 substrate/primitives/consensus/pow/Cargo.toml |  4 +--
 .../primitives/consensus/slots/Cargo.toml     |  2 +-
 substrate/primitives/consensus/vrf/Cargo.toml |  4 +--
 substrate/primitives/core/Cargo.toml          |  8 +++---
 substrate/primitives/externalities/Cargo.toml |  4 +--
 .../primitives/finality-grandpa/Cargo.toml    |  8 +++---
 substrate/primitives/inherents/Cargo.toml     |  4 +--
 substrate/primitives/io/Cargo.toml            | 16 ++++++------
 substrate/primitives/keyring/Cargo.toml       |  4 +--
 substrate/primitives/keystore/Cargo.toml      |  6 ++---
 .../primitives/npos-elections/Cargo.toml      |  4 +--
 .../npos-elections/fuzzer/Cargo.toml          |  2 +-
 substrate/primitives/offchain/Cargo.toml      |  4 +--
 substrate/primitives/rpc/Cargo.toml           |  4 +--
 .../primitives/runtime-interface/Cargo.toml   | 14 +++++-----
 .../test-wasm-deprecated/Cargo.toml           |  6 ++---
 .../runtime-interface/test-wasm/Cargo.toml    |  6 ++---
 .../runtime-interface/test/Cargo.toml         |  8 +++---
 substrate/primitives/runtime/Cargo.toml       | 10 +++----
 substrate/primitives/sandbox/Cargo.toml       |  6 ++---
 substrate/primitives/session/Cargo.toml       |  4 +--
 substrate/primitives/staking/Cargo.toml       |  2 +-
 substrate/primitives/state-machine/Cargo.toml | 10 +++----
 substrate/primitives/storage/Cargo.toml       |  2 +-
 substrate/primitives/tasks/Cargo.toml         |  8 +++---
 .../primitives/test-primitives/Cargo.toml     |  6 ++---
 substrate/primitives/timestamp/Cargo.toml     |  2 +-
 .../primitives/transaction-pool/Cargo.toml    |  2 +-
 .../transaction-storage-proof/Cargo.toml      |  6 ++---
 substrate/primitives/trie/Cargo.toml          |  6 ++---
 substrate/primitives/version/Cargo.toml       |  2 +-
 .../primitives/wasm-interface/Cargo.toml      |  2 +-
 substrate/test-utils/client/Cargo.toml        |  8 +++---
 substrate/test-utils/runtime/Cargo.toml       | 16 ++++++------
 .../test-utils/runtime/client/Cargo.toml      |  4 +--
 .../runtime/transaction-pool/Cargo.toml       |  2 +-
 .../utils/frame/benchmarking-cli/Cargo.toml   | 10 +++----
 .../frame/frame-utilities-cli/Cargo.toml      |  4 +--
 .../utils/frame/generate-bags/Cargo.toml      |  2 +-
 .../frame/remote-externalities/Cargo.toml     |  6 ++---
 substrate/utils/frame/rpc/support/Cargo.toml  |  2 +-
 substrate/utils/frame/rpc/system/Cargo.toml   |  4 +--
 .../utils/frame/try-runtime/cli/Cargo.toml    | 12 ++++-----
 180 files changed, 564 insertions(+), 564 deletions(-)

diff --git a/substrate/Cargo.lock b/substrate/Cargo.lock
index a45b3bf3289..963082a7e3a 100644
--- a/substrate/Cargo.lock
+++ b/substrate/Cargo.lock
@@ -5618,7 +5618,7 @@ dependencies = [
 
 [[package]]
 name = "pallet-contracts-primitives"
-version = "4.0.0-dev"
+version = "5.0.0"
 dependencies = [
  "bitflags",
  "parity-scale-codec",
@@ -9388,7 +9388,7 @@ dependencies = [
 
 [[package]]
 name = "sp-application-crypto"
-version = "4.0.0"
+version = "5.0.0"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -9581,7 +9581,7 @@ dependencies = [
 
 [[package]]
 name = "sp-core"
-version = "4.1.0-dev"
+version = "5.0.0"
 dependencies = [
  "base58",
  "bitflags",
@@ -9672,7 +9672,7 @@ dependencies = [
 
 [[package]]
 name = "sp-externalities"
-version = "0.10.0"
+version = "0.11.0"
 dependencies = [
  "environmental",
  "parity-scale-codec",
@@ -9713,7 +9713,7 @@ dependencies = [
 
 [[package]]
 name = "sp-io"
-version = "4.0.0"
+version = "5.0.0"
 dependencies = [
  "futures 0.3.16",
  "hash-db",
@@ -9746,7 +9746,7 @@ dependencies = [
 
 [[package]]
 name = "sp-keystore"
-version = "0.10.0"
+version = "0.11.0"
 dependencies = [
  "async-trait",
  "futures 0.3.16",
@@ -9833,7 +9833,7 @@ dependencies = [
 
 [[package]]
 name = "sp-rpc"
-version = "4.0.0-dev"
+version = "5.0.0"
 dependencies = [
  "rustc-hash",
  "serde",
@@ -9843,7 +9843,7 @@ dependencies = [
 
 [[package]]
 name = "sp-runtime"
-version = "4.1.0-dev"
+version = "5.0.0"
 dependencies = [
  "either",
  "hash256-std-hasher",
@@ -9870,7 +9870,7 @@ dependencies = [
 
 [[package]]
 name = "sp-runtime-interface"
-version = "4.1.0-dev"
+version = "5.0.0"
 dependencies = [
  "impl-trait-for-tuples",
  "parity-scale-codec",
@@ -9987,7 +9987,7 @@ dependencies = [
 
 [[package]]
 name = "sp-state-machine"
-version = "0.10.0"
+version = "0.11.0"
 dependencies = [
  "hash-db",
  "hex-literal",
@@ -10016,7 +10016,7 @@ version = "4.0.0"
 
 [[package]]
 name = "sp-storage"
-version = "4.0.0"
+version = "5.0.0"
 dependencies = [
  "impl-serde",
  "parity-scale-codec",
@@ -10102,7 +10102,7 @@ dependencies = [
 
 [[package]]
 name = "sp-trie"
-version = "4.0.0"
+version = "5.0.0"
 dependencies = [
  "criterion",
  "hash-db",
@@ -10148,7 +10148,7 @@ dependencies = [
 
 [[package]]
 name = "sp-wasm-interface"
-version = "4.1.0-dev"
+version = "5.0.0"
 dependencies = [
  "impl-trait-for-tuples",
  "log 0.4.14",
diff --git a/substrate/bin/node-template/node/Cargo.toml b/substrate/bin/node-template/node/Cargo.toml
index 300a35252c0..1f8ff0ae1e0 100644
--- a/substrate/bin/node-template/node/Cargo.toml
+++ b/substrate/bin/node-template/node/Cargo.toml
@@ -20,7 +20,7 @@ name = "node-template"
 clap = { version = "3.0", features = ["derive"] }
 
 sc-cli = { version = "0.10.0-dev", path = "../../../client/cli", features = ["wasmtime"] }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
 sc-executor = { version = "0.10.0-dev", path = "../../../client/executor", features = ["wasmtime"] }
 sc-service = { version = "0.10.0-dev", path = "../../../client/service", features = ["wasmtime"] }
 sc-telemetry = { version = "4.0.0-dev", path = "../../../client/telemetry" }
@@ -34,7 +34,7 @@ sc-consensus = { version = "0.10.0-dev", path = "../../../client/consensus/commo
 sc-finality-grandpa = { version = "0.10.0-dev", path = "../../../client/finality-grandpa" }
 sp-finality-grandpa = { version = "4.0.0-dev", path = "../../../primitives/finality-grandpa" }
 sc-client-api = { version = "4.0.0-dev", path = "../../../client/api" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 sp-timestamp = { version = "4.0.0-dev", path = "../../../primitives/timestamp" }
 
 # These dependencies are used for the node template's RPCs
diff --git a/substrate/bin/node-template/pallets/template/Cargo.toml b/substrate/bin/node-template/pallets/template/Cargo.toml
index 4dc4fb3c6e5..0a9d0eb27a2 100644
--- a/substrate/bin/node-template/pallets/template/Cargo.toml
+++ b/substrate/bin/node-template/pallets/template/Cargo.toml
@@ -22,9 +22,9 @@ frame-system = { default-features = false, version = "4.0.0-dev", path = "../../
 frame-benchmarking = { default-features = false, version = "4.0.0-dev", path = "../../../../frame/benchmarking", optional = true }
 
 [dev-dependencies]
-sp-core = { default-features = false, version = "4.1.0-dev", path = "../../../../primitives/core" }
-sp-io = { default-features = false, version = "4.0.0-dev", path = "../../../../primitives/io" }
-sp-runtime = { default-features = false, version = "4.1.0-dev", path = "../../../../primitives/runtime" }
+sp-core = { default-features = false, version = "5.0.0", path = "../../../../primitives/core" }
+sp-io = { default-features = false, version = "5.0.0", path = "../../../../primitives/io" }
+sp-runtime = { default-features = false, version = "5.0.0", path = "../../../../primitives/runtime" }
 
 [features]
 default = ["std"]
diff --git a/substrate/bin/node-template/runtime/Cargo.toml b/substrate/bin/node-template/runtime/Cargo.toml
index eb8fb9eb52a..98da28c4476 100644
--- a/substrate/bin/node-template/runtime/Cargo.toml
+++ b/substrate/bin/node-template/runtime/Cargo.toml
@@ -29,10 +29,10 @@ frame-executive = { version = "4.0.0-dev", default-features = false, path = "../
 sp-api = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/api" }
 sp-block-builder = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/block-builder"}
 sp-consensus-aura = { version = "0.10.0-dev", default-features = false, path = "../../../primitives/consensus/aura" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/core" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../../primitives/core" }
 sp-inherents = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/inherents"}
 sp-offchain = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/offchain" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../primitives/runtime" }
 sp-session = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/session" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../../primitives/std" }
 sp-transaction-pool = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/transaction-pool" }
diff --git a/substrate/bin/node/bench/Cargo.toml b/substrate/bin/node/bench/Cargo.toml
index 6c28f14793a..9939f188d5d 100644
--- a/substrate/bin/node/bench/Cargo.toml
+++ b/substrate/bin/node/bench/Cargo.toml
@@ -15,15 +15,15 @@ node-primitives = { version = "2.0.0", path = "../primitives" }
 node-testing = { version = "3.0.0-dev", path = "../testing" }
 node-runtime = { version = "3.0.0-dev", path = "../runtime" }
 sc-client-api = { version = "4.0.0-dev", path = "../../../client/api/" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
-sp-state-machine = { version = "0.10.0", path = "../../../primitives/state-machine" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
+sp-state-machine = { version = "0.11.0", path = "../../../primitives/state-machine" }
 serde = "1.0.132"
 serde_json = "1.0.74"
 derive_more = "0.99.16"
 kvdb = "0.10.0"
 kvdb-rocksdb = "0.14.0"
-sp-trie = { version = "4.0.0", path = "../../../primitives/trie" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
+sp-trie = { version = "5.0.0", path = "../../../primitives/trie" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
 sp-consensus = { version = "0.10.0-dev", path = "../../../primitives/consensus/common" }
 sc-basic-authorship = { version = "0.10.0-dev", path = "../../../client/basic-authorship" }
 sp-inherents = { version = "4.0.0-dev", path = "../../../primitives/inherents" }
diff --git a/substrate/bin/node/cli/Cargo.toml b/substrate/bin/node/cli/Cargo.toml
index 2eb1618a7c9..db198592b37 100644
--- a/substrate/bin/node/cli/Cargo.toml
+++ b/substrate/bin/node/cli/Cargo.toml
@@ -47,13 +47,13 @@ sp-authority-discovery = { version = "4.0.0-dev", path = "../../../primitives/au
 sp-consensus-babe = { version = "0.10.0-dev", path = "../../../primitives/consensus/babe" }
 grandpa-primitives = { version = "4.0.0-dev", package = "sp-finality-grandpa", path = "../../../primitives/finality-grandpa" }
 sp-api = { version = "4.0.0-dev", path = "../../../primitives/api" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 sp-timestamp = { version = "4.0.0-dev", path = "../../../primitives/timestamp" }
 sp-authorship = { version = "4.0.0-dev", path = "../../../primitives/authorship" }
 sp-inherents = { version = "4.0.0-dev", path = "../../../primitives/inherents" }
 sp-keyring = { version = "4.1.0-dev", path = "../../../primitives/keyring" }
-sp-keystore = { version = "0.10.0", path = "../../../primitives/keystore" }
+sp-keystore = { version = "0.11.0", path = "../../../primitives/keystore" }
 sp-consensus = { version = "0.10.0-dev", path = "../../../primitives/consensus/common" }
 sp-transaction-pool = { version = "4.0.0-dev", path = "../../../primitives/transaction-pool" }
 sp-transaction-storage-proof = { version = "4.0.0-dev", path = "../../../primitives/transaction-storage-proof" }
@@ -102,7 +102,7 @@ sc-cli = { version = "0.10.0-dev", optional = true, path = "../../../client/cli"
 sc-service = { version = "0.10.0-dev", default-features = false, path = "../../../client/service", features = [
 	"wasmtime",
 ] }
-sp-trie = { version = "4.0.0", default-features = false, path = "../../../primitives/trie", features = [
+sp-trie = { version = "5.0.0", default-features = false, path = "../../../primitives/trie", features = [
 	"memory-tracker",
 ] }
 
diff --git a/substrate/bin/node/executor/Cargo.toml b/substrate/bin/node/executor/Cargo.toml
index e23152e00e5..39cf1ee8d89 100644
--- a/substrate/bin/node/executor/Cargo.toml
+++ b/substrate/bin/node/executor/Cargo.toml
@@ -17,11 +17,11 @@ scale-info = { version = "1.0", features = ["derive"] }
 node-primitives = { version = "2.0.0", path = "../primitives" }
 node-runtime = { version = "3.0.0-dev", path = "../runtime" }
 sc-executor = { version = "0.10.0-dev", path = "../../../client/executor" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
-sp-keystore = { version = "0.10.0", path = "../../../primitives/keystore" }
-sp-state-machine = { version = "0.10.0", path = "../../../primitives/state-machine" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
+sp-keystore = { version = "0.11.0", path = "../../../primitives/keystore" }
+sp-state-machine = { version = "0.11.0", path = "../../../primitives/state-machine" }
 sp-tracing = { version = "4.0.0", path = "../../../primitives/tracing" }
-sp-trie = { version = "4.0.0", path = "../../../primitives/trie" }
+sp-trie = { version = "5.0.0", path = "../../../primitives/trie" }
 frame-benchmarking = { version = "4.0.0-dev", path = "../../../frame/benchmarking" }
 
 [dev-dependencies]
@@ -34,10 +34,10 @@ pallet-contracts = { version = "4.0.0-dev", path = "../../../frame/contracts" }
 pallet-im-online = { version = "4.0.0-dev", path = "../../../frame/im-online" }
 pallet-timestamp = { version = "4.0.0-dev", path = "../../../frame/timestamp" }
 pallet-treasury = { version = "4.0.0-dev", path = "../../../frame/treasury" }
-sp-application-crypto = { version = "4.0.0", path = "../../../primitives/application-crypto" }
+sp-application-crypto = { version = "5.0.0", path = "../../../primitives/application-crypto" }
 sp-consensus-babe = { version = "0.10.0-dev", path = "../../../primitives/consensus/babe" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
-sp-externalities = { version = "0.10.0", path = "../../../primitives/externalities" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
+sp-externalities = { version = "0.11.0", path = "../../../primitives/externalities" }
 sp-keyring = { version = "4.1.0-dev", path = "../../../primitives/keyring" }
 wat = "1.0"
 futures = "0.3.9"
diff --git a/substrate/bin/node/inspect/Cargo.toml b/substrate/bin/node/inspect/Cargo.toml
index bb9af8c6698..e5b4c41c91b 100644
--- a/substrate/bin/node/inspect/Cargo.toml
+++ b/substrate/bin/node/inspect/Cargo.toml
@@ -19,5 +19,5 @@ sc-client-api = { version = "4.0.0-dev", path = "../../../client/api" }
 sc-executor = { version = "0.10.0-dev", path = "../../../client/executor" }
 sc-service = { version = "0.10.0-dev", default-features = false, path = "../../../client/service" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../primitives/blockchain" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
diff --git a/substrate/bin/node/primitives/Cargo.toml b/substrate/bin/node/primitives/Cargo.toml
index e00f46720c9..5664318513a 100644
--- a/substrate/bin/node/primitives/Cargo.toml
+++ b/substrate/bin/node/primitives/Cargo.toml
@@ -16,9 +16,9 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 ] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../../../frame/system" }
-sp-application-crypto = { version = "4.0.0", default-features = false, path = "../../../primitives/application-crypto" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/core" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/runtime" }
+sp-application-crypto = { version = "5.0.0", default-features = false, path = "../../../primitives/application-crypto" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../../primitives/core" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../primitives/runtime" }
 
 [features]
 default = ["std"]
diff --git a/substrate/bin/node/rpc/Cargo.toml b/substrate/bin/node/rpc/Cargo.toml
index 36d313ebc30..c6ba0c9f992 100644
--- a/substrate/bin/node/rpc/Cargo.toml
+++ b/substrate/bin/node/rpc/Cargo.toml
@@ -29,9 +29,9 @@ sc-sync-state-rpc = { version = "0.10.0-dev", path = "../../../client/sync-state
 sp-api = { version = "4.0.0-dev", path = "../../../primitives/api" }
 sp-block-builder = { version = "4.0.0-dev", path = "../../../primitives/block-builder" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../primitives/blockchain" }
-sp-keystore = { version = "0.10.0", path = "../../../primitives/keystore" }
+sp-keystore = { version = "0.11.0", path = "../../../primitives/keystore" }
 sp-consensus = { version = "0.10.0-dev", path = "../../../primitives/consensus/common" }
 sp-consensus-babe = { version = "0.10.0-dev", path = "../../../primitives/consensus/babe" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 sc-transaction-pool-api = { version = "4.0.0-dev", path = "../../../client/transaction-pool/api" }
 substrate-frame-rpc-system = { version = "4.0.0-dev", path = "../../../utils/frame/rpc/system" }
diff --git a/substrate/bin/node/runtime/Cargo.toml b/substrate/bin/node/runtime/Cargo.toml
index ef1b73aed85..84eec766236 100644
--- a/substrate/bin/node/runtime/Cargo.toml
+++ b/substrate/bin/node/runtime/Cargo.toml
@@ -30,17 +30,17 @@ sp-block-builder = { path = "../../../primitives/block-builder", default-feature
 sp-inherents = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/inherents" }
 node-primitives = { version = "2.0.0", default-features = false, path = "../primitives" }
 sp-offchain = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/offchain" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/core" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../../primitives/core" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../../primitives/std" }
 sp-api = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/api" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../primitives/runtime" }
 sp-staking = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/staking" }
 sp-keyring = { version = "4.1.0-dev", optional = true, path = "../../../primitives/keyring" }
 sp-session = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/session" }
 sp-transaction-pool = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/transaction-pool" }
 sp-version = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/version" }
 sp-npos-elections = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/npos-elections" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../../primitives/io" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../../primitives/io" }
 sp-sandbox = { version = "0.10.0-dev", default-features = false, path = "../../../primitives/sandbox" }
 
 # frame dependencies
@@ -62,7 +62,7 @@ pallet-bounties = { version = "4.0.0-dev", default-features = false, path = "../
 pallet-child-bounties = { version = "4.0.0-dev", default-features = false, path = "../../../frame/child-bounties" }
 pallet-collective = { version = "4.0.0-dev", default-features = false, path = "../../../frame/collective" }
 pallet-contracts = { version = "4.0.0-dev", default-features = false, path = "../../../frame/contracts" }
-pallet-contracts-primitives = { version = "4.0.0-dev", default-features = false, path = "../../../frame/contracts/common/" }
+pallet-contracts-primitives = { version = "5.0.0", default-features = false, path = "../../../frame/contracts/common/" }
 pallet-contracts-rpc-runtime-api = { version = "4.0.0-dev", default-features = false, path = "../../../frame/contracts/rpc/runtime-api/" }
 pallet-democracy = { version = "4.0.0-dev", default-features = false, path = "../../../frame/democracy" }
 pallet-election-provider-multi-phase = { version = "4.0.0-dev", default-features = false, path = "../../../frame/election-provider-multi-phase" }
diff --git a/substrate/bin/node/testing/Cargo.toml b/substrate/bin/node/testing/Cargo.toml
index 29efc0028c1..55ae52b50d9 100644
--- a/substrate/bin/node/testing/Cargo.toml
+++ b/substrate/bin/node/testing/Cargo.toml
@@ -28,9 +28,9 @@ sp-keyring = { version = "4.1.0-dev", path = "../../../primitives/keyring" }
 node-executor = { version = "3.0.0-dev", path = "../executor" }
 node-primitives = { version = "2.0.0", path = "../primitives" }
 node-runtime = { version = "3.0.0-dev", path = "../runtime" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
-sp-io = { version = "4.0.0-dev", path = "../../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../../primitives/io" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 sc-executor = { version = "0.10.0-dev", path = "../../../client/executor", features = [
     "wasmtime",
 ] }
diff --git a/substrate/bin/utils/chain-spec-builder/Cargo.toml b/substrate/bin/utils/chain-spec-builder/Cargo.toml
index 452221ff6e1..f6af82ba42e 100644
--- a/substrate/bin/utils/chain-spec-builder/Cargo.toml
+++ b/substrate/bin/utils/chain-spec-builder/Cargo.toml
@@ -21,5 +21,5 @@ rand = "0.8"
 sc-keystore = { version = "4.0.0-dev", path = "../../../client/keystore" }
 sc-chain-spec = { version = "4.0.0-dev", path = "../../../client/chain-spec" }
 node-cli = { version = "3.0.0-dev", path = "../../node/cli" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
-sp-keystore = { version = "0.10.0", path = "../../../primitives/keystore" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
+sp-keystore = { version = "0.11.0", path = "../../../primitives/keystore" }
diff --git a/substrate/client/allocator/Cargo.toml b/substrate/client/allocator/Cargo.toml
index eb8d298e1ec..6f20449b38b 100644
--- a/substrate/client/allocator/Cargo.toml
+++ b/substrate/client/allocator/Cargo.toml
@@ -14,7 +14,7 @@ readme = "README.md"
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-wasm-interface = { version = "4.1.0-dev", path = "../../primitives/wasm-interface" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-wasm-interface = { version = "5.0.0", path = "../../primitives/wasm-interface" }
 log = "0.4.11"
 thiserror = "1.0.30"
diff --git a/substrate/client/api/Cargo.toml b/substrate/client/api/Cargo.toml
index c18b920cace..ab6ad96e286 100644
--- a/substrate/client/api/Cargo.toml
+++ b/substrate/client/api/Cargo.toml
@@ -19,7 +19,7 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 ] }
 sp-consensus = { version = "0.10.0-dev", path = "../../primitives/consensus/common" }
 sc-executor = { version = "0.10.0-dev", path = "../executor" }
-sp-externalities = { version = "0.10.0", path = "../../primitives/externalities" }
+sp-externalities = { version = "0.11.0", path = "../../primitives/externalities" }
 fnv = "1.0.6"
 futures = "0.3.1"
 hash-db = { version = "0.15.2", default-features = false }
@@ -27,14 +27,14 @@ sp-blockchain = { version = "4.0.0-dev", path = "../../primitives/blockchain" }
 log = "0.4.8"
 parking_lot = "0.11.2"
 sp-database = { version = "4.0.0-dev", path = "../../primitives/database" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
-sp-keystore = { version = "0.10.0", default-features = false, path = "../../primitives/keystore" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
+sp-keystore = { version = "0.11.0", default-features = false, path = "../../primitives/keystore" }
 sp-api = { version = "4.0.0-dev", path = "../../primitives/api" }
 sc-utils = { version = "4.0.0-dev", path = "../utils" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
-sp-state-machine = { version = "0.10.0", path = "../../primitives/state-machine" }
-sp-trie = { version = "4.0.0", path = "../../primitives/trie" }
-sp-storage = { version = "4.0.0", path = "../../primitives/storage" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
+sp-state-machine = { version = "0.11.0", path = "../../primitives/state-machine" }
+sp-trie = { version = "5.0.0", path = "../../primitives/trie" }
+sp-storage = { version = "5.0.0", path = "../../primitives/storage" }
 sc-transaction-pool-api = { version = "4.0.0-dev", path = "../transaction-pool/api" }
 prometheus-endpoint = { package = "substrate-prometheus-endpoint", version = "0.10.0-dev", path = "../../utils/prometheus" }
 
diff --git a/substrate/client/authority-discovery/Cargo.toml b/substrate/client/authority-discovery/Cargo.toml
index ec43112a714..e3a3ef2a359 100644
--- a/substrate/client/authority-discovery/Cargo.toml
+++ b/substrate/client/authority-discovery/Cargo.toml
@@ -32,9 +32,9 @@ sc-client-api = { version = "4.0.0-dev", path = "../api" }
 sc-network = { version = "0.10.0-dev", path = "../network" }
 sp-authority-discovery = { version = "4.0.0-dev", path = "../../primitives/authority-discovery" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../primitives/blockchain" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-keystore = { version = "0.10.0", path = "../../primitives/keystore" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-keystore = { version = "0.11.0", path = "../../primitives/keystore" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
 sp-api = { version = "4.0.0-dev", path = "../../primitives/api" }
 
 [dev-dependencies]
diff --git a/substrate/client/basic-authorship/Cargo.toml b/substrate/client/basic-authorship/Cargo.toml
index e1083b15a97..85592c7c549 100644
--- a/substrate/client/basic-authorship/Cargo.toml
+++ b/substrate/client/basic-authorship/Cargo.toml
@@ -19,8 +19,8 @@ futures-timer = "3.0.1"
 log = "0.4.8"
 prometheus-endpoint = { package = "substrate-prometheus-endpoint", path = "../../utils/prometheus", version = "0.10.0-dev"}
 sp-api = { version = "4.0.0-dev", path = "../../primitives/api" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../primitives/blockchain" }
 sc-client-api = { version = "4.0.0-dev", path = "../api" }
 sp-consensus = { version = "0.10.0-dev", path = "../../primitives/consensus/common" }
diff --git a/substrate/client/beefy/Cargo.toml b/substrate/client/beefy/Cargo.toml
index 3bef549938c..3ce556e8523 100644
--- a/substrate/client/beefy/Cargo.toml
+++ b/substrate/client/beefy/Cargo.toml
@@ -19,12 +19,12 @@ codec = { version = "2.2.0", package = "parity-scale-codec", features = ["derive
 prometheus = { version = "0.10.0-dev", package = "substrate-prometheus-endpoint", path = "../../utils/prometheus" }
 
 sp-api = { version = "4.0.0-dev", path = "../../primitives/api" }
-sp-application-crypto = { version = "4.0.0", path = "../../primitives/application-crypto" }
+sp-application-crypto = { version = "5.0.0", path = "../../primitives/application-crypto" }
 sp-arithmetic = { version = "4.0.0", path = "../../primitives/arithmetic" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../primitives/blockchain" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-keystore = { version = "0.10.0", path = "../../primitives/keystore" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-keystore = { version = "0.11.0", path = "../../primitives/keystore" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
 
 sc-chain-spec = { version = "4.0.0-dev", path = "../../client/chain-spec" }
 sc-utils = { version = "4.0.0-dev", path = "../utils" }
diff --git a/substrate/client/beefy/rpc/Cargo.toml b/substrate/client/beefy/rpc/Cargo.toml
index 444f1ff4aaf..4a300b26e12 100644
--- a/substrate/client/beefy/rpc/Cargo.toml
+++ b/substrate/client/beefy/rpc/Cargo.toml
@@ -24,8 +24,8 @@ codec = { version = "2.2.0", package = "parity-scale-codec", features = ["derive
 sc-rpc = { version = "4.0.0-dev", path = "../../rpc" }
 sc-utils = { version = "4.0.0-dev", path = "../../utils" }
 
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 
 beefy-gadget = { version = "4.0.0-dev", path = "../." }
 beefy-primitives = { version = "4.0.0-dev", path = "../../../primitives/beefy" }
diff --git a/substrate/client/block-builder/Cargo.toml b/substrate/client/block-builder/Cargo.toml
index 19b8839c122..e41ab0a5caf 100644
--- a/substrate/client/block-builder/Cargo.toml
+++ b/substrate/client/block-builder/Cargo.toml
@@ -14,11 +14,11 @@ targets = ["x86_64-unknown-linux-gnu"]
 
 
 [dependencies]
-sp-state-machine = { version = "0.10.0", path = "../../primitives/state-machine" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
+sp-state-machine = { version = "0.11.0", path = "../../primitives/state-machine" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
 sp-api = { version = "4.0.0-dev", path = "../../primitives/api" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../primitives/blockchain" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 sp-block-builder = { version = "4.0.0-dev", path = "../../primitives/block-builder" }
 sp-inherents = { version = "4.0.0-dev", path = "../../primitives/inherents" }
 sc-client-api = { version = "4.0.0-dev", path = "../api" }
diff --git a/substrate/client/chain-spec/Cargo.toml b/substrate/client/chain-spec/Cargo.toml
index 0110e82532a..d103c241433 100644
--- a/substrate/client/chain-spec/Cargo.toml
+++ b/substrate/client/chain-spec/Cargo.toml
@@ -16,10 +16,10 @@ targets = ["x86_64-unknown-linux-gnu"]
 sc-chain-spec-derive = { version = "4.0.0-dev", path = "./derive" }
 impl-trait-for-tuples = "0.2.1"
 sc-network = { version = "0.10.0-dev", path = "../network" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 serde = { version = "1.0.132", features = ["derive"] }
 serde_json = "1.0.74"
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
 sc-telemetry = { version = "4.0.0-dev", path = "../telemetry" }
 codec = { package = "parity-scale-codec", version = "2.0.0" }
 memmap2 = "0.5.0"
diff --git a/substrate/client/cli/Cargo.toml b/substrate/client/cli/Cargo.toml
index a33b3e13af3..ca7e0ac768f 100644
--- a/substrate/client/cli/Cargo.toml
+++ b/substrate/client/cli/Cargo.toml
@@ -39,11 +39,11 @@ sc-telemetry = { version = "4.0.0-dev", path = "../telemetry" }
 sc-tracing = { version = "4.0.0-dev", path = "../tracing" }
 sc-utils = { version = "4.0.0-dev", path = "../utils" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../primitives/blockchain" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 sp-keyring = { version = "4.1.0-dev", path = "../../primitives/keyring" }
-sp-keystore = { version = "0.10.0", path = "../../primitives/keystore" }
+sp-keystore = { version = "0.11.0", path = "../../primitives/keystore" }
 sp-panic-handler = { version = "4.0.0", path = "../../primitives/panic-handler" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
 sp-version = { version = "4.0.0-dev", path = "../../primitives/version" }
 
 [dev-dependencies]
diff --git a/substrate/client/consensus/aura/Cargo.toml b/substrate/client/consensus/aura/Cargo.toml
index bcae7648ce2..4fb621d716a 100644
--- a/substrate/client/consensus/aura/Cargo.toml
+++ b/substrate/client/consensus/aura/Cargo.toml
@@ -13,7 +13,7 @@ readme = "README.md"
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-application-crypto = { version = "4.0.0", path = "../../../primitives/application-crypto" }
+sp-application-crypto = { version = "5.0.0", path = "../../../primitives/application-crypto" }
 sp-consensus-aura = { version = "0.10.0-dev", path = "../../../primitives/consensus/aura" }
 sp-block-builder = { version = "4.0.0-dev", path = "../../../primitives/block-builder" }
 sc-block-builder = { version = "0.10.0-dev", path = "../../block-builder" }
@@ -26,12 +26,12 @@ thiserror = "1.0"
 futures = "0.3.9"
 sp-inherents = { version = "4.0.0-dev", path = "../../../primitives/inherents" }
 log = "0.4.8"
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../primitives/blockchain" }
 sc-consensus-slots = { version = "0.10.0-dev", path = "../slots" }
 sp-api = { version = "4.0.0-dev", path = "../../../primitives/api" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
-sp-keystore = { version = "0.10.0", path = "../../../primitives/keystore" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
+sp-keystore = { version = "0.11.0", path = "../../../primitives/keystore" }
 sc-telemetry = { version = "4.0.0-dev", path = "../../telemetry" }
 prometheus-endpoint = { package = "substrate-prometheus-endpoint", path = "../../../utils/prometheus", version = "0.10.0-dev" }
 async-trait = "0.1.50"
diff --git a/substrate/client/consensus/babe/Cargo.toml b/substrate/client/consensus/babe/Cargo.toml
index 5dd029f0ad4..79cb3a52038 100644
--- a/substrate/client/consensus/babe/Cargo.toml
+++ b/substrate/client/consensus/babe/Cargo.toml
@@ -19,15 +19,15 @@ codec = { package = "parity-scale-codec", version = "2.0.0", features = [
 ] }
 sp-consensus-babe = { version = "0.10.0-dev", path = "../../../primitives/consensus/babe" }
 sc-consensus = { version = "0.10.0-dev", path = "../../../client/consensus/common" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
-sp-application-crypto = { version = "4.0.0", path = "../../../primitives/application-crypto" }
-sp-keystore = { version = "0.10.0", path = "../../../primitives/keystore" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
+sp-application-crypto = { version = "5.0.0", path = "../../../primitives/application-crypto" }
+sp-keystore = { version = "0.11.0", path = "../../../primitives/keystore" }
 num-bigint = "0.2.3"
 num-rational = "0.2.2"
 num-traits = "0.2.8"
 serde = { version = "1.0.132", features = ["derive"] }
 sp-version = { version = "4.0.0-dev", path = "../../../primitives/version" }
-sp-io = { version = "4.0.0", path = "../../../primitives/io" }
+sp-io = { version = "5.0.0", path = "../../../primitives/io" }
 sp-inherents = { version = "4.0.0-dev", path = "../../../primitives/inherents" }
 sc-telemetry = { version = "4.0.0-dev", path = "../../telemetry" }
 sc-keystore = { version = "4.0.0-dev", path = "../../keystore" }
@@ -40,7 +40,7 @@ sp-consensus = { version = "0.10.0-dev", path = "../../../primitives/consensus/c
 sp-consensus-slots = { version = "0.10.0-dev", path = "../../../primitives/consensus/slots" }
 sp-consensus-vrf = { version = "0.10.0-dev", path = "../../../primitives/consensus/vrf" }
 sc-consensus-slots = { version = "0.10.0-dev", path = "../slots" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 fork-tree = { version = "3.0.0", path = "../../../utils/fork-tree" }
 prometheus-endpoint = { package = "substrate-prometheus-endpoint", path = "../../../utils/prometheus", version = "0.10.0-dev" }
 futures = "0.3.9"
diff --git a/substrate/client/consensus/babe/rpc/Cargo.toml b/substrate/client/consensus/babe/rpc/Cargo.toml
index 4997cfdd1ee..87ef265ffd9 100644
--- a/substrate/client/consensus/babe/rpc/Cargo.toml
+++ b/substrate/client/consensus/babe/rpc/Cargo.toml
@@ -21,15 +21,15 @@ jsonrpc-derive = "18.0.0"
 sp-consensus-babe = { version = "0.10.0-dev", path = "../../../../primitives/consensus/babe" }
 serde = { version = "1.0.132", features = ["derive"] }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../../primitives/blockchain" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../../../primitives/runtime" }
 sc-consensus-epochs = { version = "0.10.0-dev", path = "../../epochs" }
 futures = "0.3.16"
 thiserror = "1.0"
 sp-api = { version = "4.0.0-dev", path = "../../../../primitives/api" }
 sp-consensus = { version = "0.10.0-dev", path = "../../../../primitives/consensus/common" }
-sp-core = { version = "4.1.0-dev", path = "../../../../primitives/core" }
-sp-application-crypto = { version = "4.0.0", path = "../../../../primitives/application-crypto" }
-sp-keystore = { version = "0.10.0", path = "../../../../primitives/keystore" }
+sp-core = { version = "5.0.0", path = "../../../../primitives/core" }
+sp-application-crypto = { version = "5.0.0", path = "../../../../primitives/application-crypto" }
+sp-keystore = { version = "0.11.0", path = "../../../../primitives/keystore" }
 
 [dev-dependencies]
 sc-consensus = { version = "0.10.0-dev", path = "../../../consensus/common" }
diff --git a/substrate/client/consensus/common/Cargo.toml b/substrate/client/consensus/common/Cargo.toml
index 72a0544535a..a14a3676903 100644
--- a/substrate/client/consensus/common/Cargo.toml
+++ b/substrate/client/consensus/common/Cargo.toml
@@ -20,10 +20,10 @@ futures = { version = "0.3.1", features = ["thread-pool"] }
 futures-timer = "3.0.1"
 sc-client-api = { version = "4.0.0-dev", path = "../../api" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../primitives/blockchain" }
-sp-core = { path = "../../../primitives/core", version = "4.1.0-dev" }
+sp-core = { path = "../../../primitives/core", version = "5.0.0"}
 sp-consensus = { path = "../../../primitives/consensus/common", version = "0.10.0-dev" }
-sp-state-machine = { version = "0.10.0", path = "../../../primitives/state-machine" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-state-machine = { version = "0.11.0", path = "../../../primitives/state-machine" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 sc-utils = { version = "4.0.0-dev", path = "../../utils" }
 sp-api = { version = "4.0.0-dev", path = "../../../primitives/api" }
 parking_lot = "0.11.2"
diff --git a/substrate/client/consensus/epochs/Cargo.toml b/substrate/client/consensus/epochs/Cargo.toml
index bb4a77b559e..b377dccfd36 100644
--- a/substrate/client/consensus/epochs/Cargo.toml
+++ b/substrate/client/consensus/epochs/Cargo.toml
@@ -15,7 +15,7 @@ targets = ["x86_64-unknown-linux-gnu"]
 [dependencies]
 codec = { package = "parity-scale-codec", version = "2.0.0", features = ["derive"] }
 fork-tree = { version = "3.0.0", path = "../../../utils/fork-tree" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../primitives/blockchain" }
 sc-client-api = { path = "../../api" , version = "4.0.0-dev"}
 sc-consensus = { path = "../common" , version = "0.10.0-dev"}
diff --git a/substrate/client/consensus/manual-seal/Cargo.toml b/substrate/client/consensus/manual-seal/Cargo.toml
index ff2264e6417..c2c36b1fc58 100644
--- a/substrate/client/consensus/manual-seal/Cargo.toml
+++ b/substrate/client/consensus/manual-seal/Cargo.toml
@@ -37,9 +37,9 @@ sp-blockchain = { path = "../../../primitives/blockchain", version = "4.0.0-dev"
 sp-consensus = { path = "../../../primitives/consensus/common", version = "0.10.0-dev" }
 sp-consensus-slots = { path = "../../../primitives/consensus/slots", version = "0.10.0-dev" }
 sp-inherents = { path = "../../../primitives/inherents", version = "4.0.0-dev" }
-sp-runtime = { path = "../../../primitives/runtime", version = "4.1.0-dev" }
-sp-core = { path = "../../../primitives/core", version = "4.1.0-dev" }
-sp-keystore = { path = "../../../primitives/keystore", version = "0.10.0" }
+sp-runtime = { path = "../../../primitives/runtime", version = "5.0.0"}
+sp-core = { path = "../../../primitives/core", version = "5.0.0"}
+sp-keystore = { path = "../../../primitives/keystore", version = "0.11.0"}
 sp-api = { path = "../../../primitives/api", version = "4.0.0-dev" }
 sc-transaction-pool-api = { path = "../../../client/transaction-pool/api", version = "4.0.0-dev" }
 sp-timestamp = { path = "../../../primitives/timestamp", version = "4.0.0-dev" }
diff --git a/substrate/client/consensus/pow/Cargo.toml b/substrate/client/consensus/pow/Cargo.toml
index e5bf87487c7..eb609489290 100644
--- a/substrate/client/consensus/pow/Cargo.toml
+++ b/substrate/client/consensus/pow/Cargo.toml
@@ -14,9 +14,9 @@ targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
 codec = { package = "parity-scale-codec", version = "2.0.0", features = ["derive"] }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../primitives/blockchain" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 sp-api = { version = "4.0.0-dev", path = "../../../primitives/api" }
 sc-client-api = { version = "4.0.0-dev", path = "../../api" }
 sp-block-builder = { version = "4.0.0-dev", path = "../../../primitives/block-builder" }
diff --git a/substrate/client/consensus/slots/Cargo.toml b/substrate/client/consensus/slots/Cargo.toml
index 60f57449a3a..b13c1bb6b5b 100644
--- a/substrate/client/consensus/slots/Cargo.toml
+++ b/substrate/client/consensus/slots/Cargo.toml
@@ -16,13 +16,13 @@ targets = ["x86_64-unknown-linux-gnu"]
 [dependencies]
 codec = { package = "parity-scale-codec", version = "2.0.0" }
 sc-client-api = { version = "4.0.0-dev", path = "../../api" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
 sp-arithmetic = { version = "4.0.0", path = "../../../primitives/arithmetic" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../primitives/blockchain" }
 sc-consensus = { version = "0.10.0-dev", path = "../../../client/consensus/common" }
 sp-consensus-slots = { version = "0.10.0-dev", path = "../../../primitives/consensus/slots" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
-sp-state-machine = { version = "0.10.0", path = "../../../primitives/state-machine" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
+sp-state-machine = { version = "0.11.0", path = "../../../primitives/state-machine" }
 sc-telemetry = { version = "4.0.0-dev", path = "../../telemetry" }
 sp-consensus = { version = "0.10.0-dev", path = "../../../primitives/consensus/common" }
 sp-inherents = { version = "4.0.0-dev", path = "../../../primitives/inherents" }
diff --git a/substrate/client/consensus/uncles/Cargo.toml b/substrate/client/consensus/uncles/Cargo.toml
index b9eaae4773a..7482fdc12d0 100644
--- a/substrate/client/consensus/uncles/Cargo.toml
+++ b/substrate/client/consensus/uncles/Cargo.toml
@@ -14,6 +14,6 @@ targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
 sc-client-api = { version = "4.0.0-dev", path = "../../api" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 sp-authorship = { version = "4.0.0-dev", path = "../../../primitives/authorship" }
 thiserror = "1.0.30"
diff --git a/substrate/client/db/Cargo.toml b/substrate/client/db/Cargo.toml
index 0db0f8309e2..f2c21abf6c1 100644
--- a/substrate/client/db/Cargo.toml
+++ b/substrate/client/db/Cargo.toml
@@ -26,11 +26,11 @@ codec = { package = "parity-scale-codec", version = "2.0.0", features = [
 
 sc-client-api = { version = "4.0.0-dev", path = "../api" }
 sp-arithmetic = { version = "4.0.0", path = "../../primitives/arithmetic" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
-sp-state-machine = { version = "0.10.0", path = "../../primitives/state-machine" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
+sp-state-machine = { version = "0.11.0", path = "../../primitives/state-machine" }
 sc-state-db = { version = "0.10.0-dev", path = "../state-db" }
-sp-trie = { version = "4.0.0", path = "../../primitives/trie" }
+sp-trie = { version = "5.0.0", path = "../../primitives/trie" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../primitives/blockchain" }
 sp-database = { version = "4.0.0-dev", path = "../../primitives/database" }
 parity-db = { version = "0.3.5", optional = true }
diff --git a/substrate/client/executor/Cargo.toml b/substrate/client/executor/Cargo.toml
index e10cbf347db..0d0f2a8bd92 100644
--- a/substrate/client/executor/Cargo.toml
+++ b/substrate/client/executor/Cargo.toml
@@ -15,18 +15,18 @@ targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
 codec = { package = "parity-scale-codec", version = "2.0.0" }
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 sp-tasks = { version = "4.0.0-dev", path = "../../primitives/tasks" }
-sp-trie = { version = "4.0.0", path = "../../primitives/trie" }
+sp-trie = { version = "5.0.0", path = "../../primitives/trie" }
 sp-version = { version = "4.0.0-dev", path = "../../primitives/version" }
 sp-panic-handler = { version = "4.0.0", path = "../../primitives/panic-handler" }
 wasmi = "0.9.1"
 lazy_static = "1.4.0"
 sp-api = { version = "4.0.0-dev", path = "../../primitives/api" }
-sp-wasm-interface = { version = "4.1.0-dev", path = "../../primitives/wasm-interface" }
-sp-runtime-interface = { version = "4.1.0-dev", path = "../../primitives/runtime-interface" }
-sp-externalities = { version = "0.10.0", path = "../../primitives/externalities" }
+sp-wasm-interface = { version = "5.0.0", path = "../../primitives/wasm-interface" }
+sp-runtime-interface = { version = "5.0.0", path = "../../primitives/runtime-interface" }
+sp-externalities = { version = "0.11.0", path = "../../primitives/externalities" }
 sc-executor-common = { version = "0.10.0-dev", path = "common" }
 sc-executor-wasmi = { version = "0.10.0-dev", path = "wasmi" }
 sc-executor-wasmtime = { version = "0.10.0-dev", path = "wasmtime", optional = true }
@@ -41,8 +41,8 @@ wat = "1.0"
 hex-literal = "0.3.4"
 sc-runtime-test = { version = "2.0.0", path = "runtime-test" }
 substrate-test-runtime = { version = "2.0.0", path = "../../test-utils/runtime" }
-sp-state-machine = { version = "0.10.0", path = "../../primitives/state-machine" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
+sp-state-machine = { version = "0.11.0", path = "../../primitives/state-machine" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
 sp-maybe-compressed-blob = { version = "4.1.0-dev", path = "../../primitives/maybe-compressed-blob" }
 sc-tracing = { version = "4.0.0-dev", path = "../tracing" }
 tracing = "0.1.29"
diff --git a/substrate/client/executor/common/Cargo.toml b/substrate/client/executor/common/Cargo.toml
index 104d24876d9..e23db203b3a 100644
--- a/substrate/client/executor/common/Cargo.toml
+++ b/substrate/client/executor/common/Cargo.toml
@@ -17,9 +17,9 @@ targets = ["x86_64-unknown-linux-gnu"]
 wasm-instrument = "0.1"
 codec = { package = "parity-scale-codec", version = "2.0.0" }
 wasmi = "0.9.1"
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
 sc-allocator = { version = "4.1.0-dev", path = "../../allocator" }
-sp-wasm-interface = { version = "4.1.0-dev", path = "../../../primitives/wasm-interface" }
+sp-wasm-interface = { version = "5.0.0", path = "../../../primitives/wasm-interface" }
 sp-maybe-compressed-blob = { version = "4.1.0-dev", path = "../../../primitives/maybe-compressed-blob" }
 sp-serializer = { version = "4.0.0-dev", path = "../../../primitives/serializer" }
 thiserror = "1.0.30"
diff --git a/substrate/client/executor/runtime-test/Cargo.toml b/substrate/client/executor/runtime-test/Cargo.toml
index 1318c7246a8..b6fbe8685e3 100644
--- a/substrate/client/executor/runtime-test/Cargo.toml
+++ b/substrate/client/executor/runtime-test/Cargo.toml
@@ -13,9 +13,9 @@ repository = "https://github.com/paritytech/substrate/"
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/core" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../../primitives/core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../primitives/runtime" }
 sp-sandbox = { version = "0.10.0-dev", default-features = false, path = "../../../primitives/sandbox" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../../primitives/std" }
 sp-tasks = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/tasks" }
diff --git a/substrate/client/executor/wasmi/Cargo.toml b/substrate/client/executor/wasmi/Cargo.toml
index 9dc63747166..d333e98bf6c 100644
--- a/substrate/client/executor/wasmi/Cargo.toml
+++ b/substrate/client/executor/wasmi/Cargo.toml
@@ -19,7 +19,7 @@ wasmi = "0.9.1"
 codec = { package = "parity-scale-codec", version = "2.0.0" }
 sc-executor-common = { version = "0.10.0-dev", path = "../common" }
 sc-allocator = { version = "4.1.0-dev", path = "../../allocator" }
-sp-wasm-interface = { version = "4.1.0-dev", path = "../../../primitives/wasm-interface" }
-sp-runtime-interface = { version = "4.1.0-dev", path = "../../../primitives/runtime-interface" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
+sp-wasm-interface = { version = "5.0.0", path = "../../../primitives/wasm-interface" }
+sp-runtime-interface = { version = "5.0.0", path = "../../../primitives/runtime-interface" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
 scoped-tls = "1.0"
diff --git a/substrate/client/executor/wasmtime/Cargo.toml b/substrate/client/executor/wasmtime/Cargo.toml
index 8b3cd1a58e7..0423b384943 100644
--- a/substrate/client/executor/wasmtime/Cargo.toml
+++ b/substrate/client/executor/wasmtime/Cargo.toml
@@ -19,9 +19,9 @@ log = "0.4.8"
 parity-wasm = "0.42.0"
 codec = { package = "parity-scale-codec", version = "2.0.0" }
 sc-executor-common = { version = "0.10.0-dev", path = "../common" }
-sp-wasm-interface = { version = "4.1.0-dev", path = "../../../primitives/wasm-interface", features = ["wasmtime"] }
-sp-runtime-interface = { version = "4.1.0-dev", path = "../../../primitives/runtime-interface" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
+sp-wasm-interface = { version = "5.0.0", path = "../../../primitives/wasm-interface", features = ["wasmtime"] }
+sp-runtime-interface = { version = "5.0.0", path = "../../../primitives/runtime-interface" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
 sc-allocator = { version = "4.1.0-dev", path = "../../allocator" }
 wasmtime = { version = "0.33.0", default-features = false, features = [
     "cache",
@@ -32,5 +32,5 @@ wasmtime = { version = "0.33.0", default-features = false, features = [
 
 [dev-dependencies]
 sc-runtime-test = { version = "2.0.0", path = "../runtime-test" }
-sp-io = { version = "4.0.0", path = "../../../primitives/io" }
+sp-io = { version = "5.0.0", path = "../../../primitives/io" }
 wat = "1.0"
diff --git a/substrate/client/finality-grandpa/Cargo.toml b/substrate/client/finality-grandpa/Cargo.toml
index 2e6d3407a19..e6b0b639668 100644
--- a/substrate/client/finality-grandpa/Cargo.toml
+++ b/substrate/client/finality-grandpa/Cargo.toml
@@ -23,15 +23,15 @@ log = "0.4.8"
 parking_lot = "0.11.2"
 rand = "0.8.4"
 parity-scale-codec = { version = "2.3.1", features = ["derive"] }
-sp-application-crypto = { version = "4.0.0", path = "../../primitives/application-crypto" }
+sp-application-crypto = { version = "5.0.0", path = "../../primitives/application-crypto" }
 sp-arithmetic = { version = "4.0.0", path = "../../primitives/arithmetic" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
 sc-chain-spec = { version = "4.0.0-dev", path = "../../client/chain-spec" }
 sc-utils = { version = "4.0.0-dev", path = "../utils" }
 sp-consensus = { version = "0.10.0-dev", path = "../../primitives/consensus/common" }
 sc-consensus = { version = "0.10.0-dev", path = "../consensus/common" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-keystore = { version = "0.10.0", path = "../../primitives/keystore" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-keystore = { version = "0.11.0", path = "../../primitives/keystore" }
 sp-api = { version = "4.0.0-dev", path = "../../primitives/api" }
 sc-telemetry = { version = "4.0.0-dev", path = "../telemetry" }
 sc-keystore = { version = "4.0.0-dev", path = "../keystore" }
diff --git a/substrate/client/finality-grandpa/rpc/Cargo.toml b/substrate/client/finality-grandpa/rpc/Cargo.toml
index 39bf398fe31..2845621cadd 100644
--- a/substrate/client/finality-grandpa/rpc/Cargo.toml
+++ b/substrate/client/finality-grandpa/rpc/Cargo.toml
@@ -12,8 +12,8 @@ readme = "README.md"
 sc-finality-grandpa = { version = "0.10.0-dev", path = "../" }
 sc-rpc = { version = "4.0.0-dev", path = "../../rpc" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../primitives/blockchain" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 finality-grandpa = { version = "0.14.4", features = ["derive-codec"] }
 jsonrpc-core = "18.0.0"
 jsonrpc-core-client = "18.0.0"
@@ -32,7 +32,7 @@ sc-block-builder = { version = "0.10.0-dev", path = "../../block-builder" }
 sc-rpc = { version = "4.0.0-dev", path = "../../rpc", features = [
     "test-helpers",
 ] }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
 sp-finality-grandpa = { version = "4.0.0-dev", path = "../../../primitives/finality-grandpa" }
 sp-keyring = { version = "4.1.0-dev", path = "../../../primitives/keyring" }
 substrate-test-runtime-client = { version = "2.0.0", path = "../../../test-utils/runtime/client" }
diff --git a/substrate/client/informant/Cargo.toml b/substrate/client/informant/Cargo.toml
index ce7fe31648a..78ee90823f2 100644
--- a/substrate/client/informant/Cargo.toml
+++ b/substrate/client/informant/Cargo.toml
@@ -21,5 +21,5 @@ parity-util-mem = { version = "0.10.2", default-features = false, features = ["p
 sc-client-api = { version = "4.0.0-dev", path = "../api" }
 sc-network = { version = "0.10.0-dev", path = "../network" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../primitives/blockchain" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
 sc-transaction-pool-api = { version = "4.0.0-dev", path = "../transaction-pool/api" }
diff --git a/substrate/client/keystore/Cargo.toml b/substrate/client/keystore/Cargo.toml
index 56d4ee0d556..4d67be4167d 100644
--- a/substrate/client/keystore/Cargo.toml
+++ b/substrate/client/keystore/Cargo.toml
@@ -17,9 +17,9 @@ targets = ["x86_64-unknown-linux-gnu"]
 [dependencies]
 async-trait = "0.1.50"
 thiserror = "1.0"
-sp-application-crypto = { version = "4.0.0", path = "../../primitives/application-crypto" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-keystore = { version = "0.10.0", path = "../../primitives/keystore" }
+sp-application-crypto = { version = "5.0.0", path = "../../primitives/application-crypto" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-keystore = { version = "0.11.0", path = "../../primitives/keystore" }
 hex = "0.4.0"
 parking_lot = "0.11.2"
 serde_json = "1.0.74"
diff --git a/substrate/client/network-gossip/Cargo.toml b/substrate/client/network-gossip/Cargo.toml
index 9523e32f99e..7952d97193e 100644
--- a/substrate/client/network-gossip/Cargo.toml
+++ b/substrate/client/network-gossip/Cargo.toml
@@ -22,7 +22,7 @@ log = "0.4.8"
 lru = "0.7.0"
 prometheus-endpoint = { package = "substrate-prometheus-endpoint", version = "0.10.0-dev", path = "../../utils/prometheus" }
 sc-network = { version = "0.10.0-dev", path = "../network" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
 tracing = "0.1.29"
 
 [dev-dependencies]
diff --git a/substrate/client/network/Cargo.toml b/substrate/client/network/Cargo.toml
index 354991b32ba..fa1cc715e15 100644
--- a/substrate/client/network/Cargo.toml
+++ b/substrate/client/network/Cargo.toml
@@ -52,8 +52,8 @@ sp-arithmetic = { version = "4.0.0", path = "../../primitives/arithmetic" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../primitives/blockchain" }
 sp-consensus = { version = "0.10.0-dev", path = "../../primitives/consensus/common" }
 sc-consensus = { version = "0.10.0-dev", path = "../consensus/common" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
 sc-utils = { version = "4.0.0-dev", path = "../utils" }
 sp-finality-grandpa = { version = "4.0.0-dev", path = "../../primitives/finality-grandpa" }
 thiserror = "1.0"
diff --git a/substrate/client/network/test/Cargo.toml b/substrate/client/network/test/Cargo.toml
index 6b6d777e739..2750c613d42 100644
--- a/substrate/client/network/test/Cargo.toml
+++ b/substrate/client/network/test/Cargo.toml
@@ -25,8 +25,8 @@ sp-consensus = { version = "0.10.0-dev", path = "../../../primitives/consensus/c
 sc-consensus = { version = "0.10.0-dev", path = "../../consensus/common" }
 sc-client-api = { version = "4.0.0-dev", path = "../../api" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../primitives/blockchain" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
 sc-block-builder = { version = "0.10.0-dev", path = "../../block-builder" }
 sp-consensus-babe = { version = "0.10.0-dev", path = "../../../primitives/consensus/babe" }
 substrate-test-runtime-client = { version = "2.0.0", path = "../../../test-utils/runtime/client" }
diff --git a/substrate/client/offchain/Cargo.toml b/substrate/client/offchain/Cargo.toml
index dd4bdb71f93..5cd823958ee 100644
--- a/substrate/client/offchain/Cargo.toml
+++ b/substrate/client/offchain/Cargo.toml
@@ -25,9 +25,9 @@ rand = "0.7.2"
 sc-client-api = { version = "4.0.0-dev", path = "../api" }
 sc-network = { version = "0.10.0-dev", path = "../network" }
 sp-api = { version = "4.0.0-dev", path = "../../primitives/api" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 sp-offchain = { version = "4.0.0-dev", path = "../../primitives/offchain" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
 sc-utils = { version = "4.0.0-dev", path = "../utils" }
 threadpool = "1.7"
 hyper = { version = "0.14.16", features = ["stream", "http2"] }
diff --git a/substrate/client/rpc-api/Cargo.toml b/substrate/client/rpc-api/Cargo.toml
index 4b2882ee827..8b8b70b9747 100644
--- a/substrate/client/rpc-api/Cargo.toml
+++ b/substrate/client/rpc-api/Cargo.toml
@@ -23,12 +23,12 @@ log = "0.4.8"
 parking_lot = "0.11.2"
 thiserror = "1.0"
 
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 sp-version = { version = "4.0.0-dev", path = "../../primitives/version" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
 sc-chain-spec = { path = "../chain-spec", version = "4.0.0-dev" }
 serde = { version = "1.0.132", features = ["derive"] }
 serde_json = "1.0.74"
 sc-transaction-pool-api = { version = "4.0.0-dev", path = "../transaction-pool/api" }
-sp-rpc = { version = "4.0.0-dev", path = "../../primitives/rpc" }
+sp-rpc = { version = "5.0.0", path = "../../primitives/rpc" }
 sp-tracing = { version = "4.0.0", path = "../../primitives/tracing" }
diff --git a/substrate/client/rpc/Cargo.toml b/substrate/client/rpc/Cargo.toml
index 87fc263356a..308d99bc4f3 100644
--- a/substrate/client/rpc/Cargo.toml
+++ b/substrate/client/rpc/Cargo.toml
@@ -20,16 +20,16 @@ codec = { package = "parity-scale-codec", version = "2.0.0" }
 futures = "0.3.16"
 jsonrpc-pubsub = "18.0.0"
 log = "0.4.8"
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 rpc = { package = "jsonrpc-core", version = "18.0.0" }
 sp-version = { version = "4.0.0-dev", path = "../../primitives/version" }
 serde_json = "1.0.74"
 sp-session = { version = "4.0.0-dev", path = "../../primitives/session" }
 sp-offchain = { version = "4.0.0-dev", path = "../../primitives/offchain" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
 sc-utils = { version = "4.0.0-dev", path = "../utils" }
-sp-rpc = { version = "4.0.0-dev", path = "../../primitives/rpc" }
-sp-keystore = { version = "0.10.0", path = "../../primitives/keystore" }
+sp-rpc = { version = "5.0.0", path = "../../primitives/rpc" }
+sp-keystore = { version = "0.11.0", path = "../../primitives/keystore" }
 sc-chain-spec = { version = "4.0.0-dev", path = "../chain-spec" }
 sc-block-builder = { version = "0.10.0-dev", path = "../block-builder" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../primitives/blockchain" }
@@ -43,7 +43,7 @@ sc-transaction-pool-api = { version = "4.0.0-dev", path = "../transaction-pool/a
 assert_matches = "1.3.0"
 lazy_static = "1.4.0"
 sc-network = { version = "0.10.0-dev", path = "../network" }
-sp-io = { version = "4.0.0", path = "../../primitives/io" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
 substrate-test-runtime-client = { version = "2.0.0", path = "../../test-utils/runtime/client" }
 sc-transaction-pool = { version = "4.0.0-dev", path = "../transaction-pool" }
 sp-consensus = { version = "0.10.0-dev", path = "../../primitives/consensus/common" }
diff --git a/substrate/client/service/Cargo.toml b/substrate/client/service/Cargo.toml
index f23bf3f55bb..fb6c4a08376 100644
--- a/substrate/client/service/Cargo.toml
+++ b/substrate/client/service/Cargo.toml
@@ -36,21 +36,21 @@ hash-db = "0.15.2"
 serde = "1.0.132"
 serde_json = "1.0.74"
 sc-keystore = { version = "4.0.0-dev", path = "../keystore" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
-sp-trie = { version = "4.0.0", path = "../../primitives/trie" }
-sp-externalities = { version = "0.10.0", path = "../../primitives/externalities" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
+sp-trie = { version = "5.0.0", path = "../../primitives/trie" }
+sp-externalities = { version = "0.11.0", path = "../../primitives/externalities" }
 sc-utils = { version = "4.0.0-dev", path = "../utils" }
 sp-version = { version = "4.0.0-dev", path = "../../primitives/version" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../primitives/blockchain" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-keystore = { version = "0.10.0", path = "../../primitives/keystore" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-keystore = { version = "0.11.0", path = "../../primitives/keystore" }
 sp-session = { version = "4.0.0-dev", path = "../../primitives/session" }
-sp-state-machine = { version = "0.10.0", path = "../../primitives/state-machine" }
-sp-application-crypto = { version = "4.0.0", path = "../../primitives/application-crypto" }
+sp-state-machine = { version = "0.11.0", path = "../../primitives/state-machine" }
+sp-application-crypto = { version = "5.0.0", path = "../../primitives/application-crypto" }
 sp-consensus = { version = "0.10.0-dev", path = "../../primitives/consensus/common" }
 sc-consensus = { version = "0.10.0-dev", path = "../../client/consensus/common" }
 sp-inherents = { version = "4.0.0-dev", path = "../../primitives/inherents" }
-sp-storage = { version = "4.0.0", path = "../../primitives/storage" }
+sp-storage = { version = "5.0.0", path = "../../primitives/storage" }
 sc-network = { version = "0.10.0-dev", path = "../network" }
 sc-chain-spec = { version = "4.0.0-dev", path = "../chain-spec" }
 sc-client-api = { version = "4.0.0-dev", path = "../api" }
diff --git a/substrate/client/service/test/Cargo.toml b/substrate/client/service/test/Cargo.toml
index 84b1d44e7bd..6395f9d9877 100644
--- a/substrate/client/service/test/Cargo.toml
+++ b/substrate/client/service/test/Cargo.toml
@@ -21,18 +21,18 @@ fdlimit = "0.2.1"
 parking_lot = "0.11.2"
 sp-blockchain = { version = "4.0.0-dev", path = "../../../primitives/blockchain" }
 sp-api = { version = "4.0.0-dev", path = "../../../primitives/api" }
-sp-state-machine = { version = "0.10.0", path = "../../../primitives/state-machine" }
-sp-externalities = { version = "0.10.0", path = "../../../primitives/externalities" }
-sp-trie = { version = "4.0.0", path = "../../../primitives/trie" }
-sp-storage = { version = "4.0.0", path = "../../../primitives/storage" }
+sp-state-machine = { version = "0.11.0", path = "../../../primitives/state-machine" }
+sp-externalities = { version = "0.11.0", path = "../../../primitives/externalities" }
+sp-trie = { version = "5.0.0", path = "../../../primitives/trie" }
+sp-storage = { version = "5.0.0", path = "../../../primitives/storage" }
 sc-client-db = { version = "0.10.0-dev", default-features = false, path = "../../db" }
 futures = "0.3.16"
 sc-service = { version = "0.10.0-dev", features = ["test-helpers"], path = "../../service" }
 sc-network = { version = "0.10.0-dev", path = "../../network" }
 sp-consensus = { version = "0.10.0-dev", path = "../../../primitives/consensus/common" }
 sc-consensus = { version = "0.10.0-dev", path = "../../../client/consensus/common" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
 sc-transaction-pool-api = { version = "4.0.0-dev", path = "../../../client/transaction-pool/api" }
 substrate-test-runtime = { version = "2.0.0", path = "../../../test-utils/runtime" }
 substrate-test-runtime-client = { version = "2.0.0", path = "../../../test-utils/runtime/client" }
diff --git a/substrate/client/state-db/Cargo.toml b/substrate/client/state-db/Cargo.toml
index fbde840fbb8..fa0c5ed9810 100644
--- a/substrate/client/state-db/Cargo.toml
+++ b/substrate/client/state-db/Cargo.toml
@@ -16,7 +16,7 @@ targets = ["x86_64-unknown-linux-gnu"]
 parking_lot = "0.11.2"
 log = "0.4.11"
 sc-client-api = { version = "4.0.0-dev", path = "../api" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 codec = { package = "parity-scale-codec", version = "2.0.0", features = ["derive"] }
 parity-util-mem = { version = "0.10.2", default-features = false, features = ["primitive-types"] }
 parity-util-mem-derive = "0.1.0"
diff --git a/substrate/client/sync-state-rpc/Cargo.toml b/substrate/client/sync-state-rpc/Cargo.toml
index 0aae985319d..eab6ffa88f1 100644
--- a/substrate/client/sync-state-rpc/Cargo.toml
+++ b/substrate/client/sync-state-rpc/Cargo.toml
@@ -26,5 +26,5 @@ sc-rpc-api = { version = "0.10.0-dev", path = "../rpc-api" }
 serde_json = "1.0.74"
 serde = { version = "1.0.132", features = ["derive"] }
 sp-blockchain = { version = "4.0.0-dev", path = "../../primitives/blockchain" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
 codec = { package = "parity-scale-codec", version = "2.0.0" }
diff --git a/substrate/client/tracing/Cargo.toml b/substrate/client/tracing/Cargo.toml
index 62c7f7a4bec..b8910199c0e 100644
--- a/substrate/client/tracing/Cargo.toml
+++ b/substrate/client/tracing/Cargo.toml
@@ -29,11 +29,11 @@ tracing = "0.1.29"
 tracing-log = "0.1.2"
 tracing-subscriber = { version = "0.2.25", features = ["parking_lot"] }
 sp-tracing = { version = "4.0.0", path = "../../primitives/tracing" }
-sp-rpc = { version = "4.0.0-dev", path = "../../primitives/rpc" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
+sp-rpc = { version = "5.0.0", path = "../../primitives/rpc" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../primitives/blockchain" }
 sp-api = { version = "4.0.0-dev", path = "../../primitives/api" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 sc-client-api = { version = "4.0.0-dev", path = "../api" }
 sc-tracing-proc-macro = { version = "4.0.0-dev", path = "./proc-macro" }
 sc-rpc-server = { version = "4.0.0-dev", path = "../rpc-servers" }
diff --git a/substrate/client/transaction-pool/Cargo.toml b/substrate/client/transaction-pool/Cargo.toml
index 73ec7cfff7f..06fc8298f01 100644
--- a/substrate/client/transaction-pool/Cargo.toml
+++ b/substrate/client/transaction-pool/Cargo.toml
@@ -23,8 +23,8 @@ parking_lot = "0.11.2"
 prometheus-endpoint = { package = "substrate-prometheus-endpoint", path = "../../utils/prometheus", version = "0.10.0-dev"}
 sc-client-api = { version = "4.0.0-dev", path = "../api" }
 sp-api = { version = "4.0.0-dev", path = "../../primitives/api" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
 sp-tracing = { version = "4.0.0", path = "../../primitives/tracing" }
 sp-transaction-pool = { version = "4.0.0-dev", path = "../../primitives/transaction-pool" }
 sc-transaction-pool-api = { version = "4.0.0-dev", path = "./api" }
diff --git a/substrate/client/transaction-pool/api/Cargo.toml b/substrate/client/transaction-pool/api/Cargo.toml
index a544248a4f2..9d7e6ea5e0f 100644
--- a/substrate/client/transaction-pool/api/Cargo.toml
+++ b/substrate/client/transaction-pool/api/Cargo.toml
@@ -14,5 +14,5 @@ log = "0.4.8"
 serde = { version = "1.0.132", features = ["derive"] }
 thiserror = "1.0.30"
 
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../primitives/runtime" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../primitives/blockchain" }
diff --git a/substrate/frame/assets/Cargo.toml b/substrate/frame/assets/Cargo.toml
index c250a75d4c2..c5d60291fc4 100644
--- a/substrate/frame/assets/Cargo.toml
+++ b/substrate/frame/assets/Cargo.toml
@@ -17,7 +17,7 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
 # Needed for various traits. In our case, `OnFinalize`.
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 # Needed for type-safe access to storage DB.
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 # `system` module provides us with all sorts of useful stuff and macros depend on it being around.
@@ -25,9 +25,9 @@ frame-system = { version = "4.0.0-dev", default-features = false, path = "../sys
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 sp-std = { version = "4.0.0", path = "../../primitives/std" }
-sp-io = { version = "4.0.0", path = "../../primitives/io" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 
 [features]
diff --git a/substrate/frame/atomic-swap/Cargo.toml b/substrate/frame/atomic-swap/Cargo.toml
index 0f478ab5602..1dcd6154d0b 100644
--- a/substrate/frame/atomic-swap/Cargo.toml
+++ b/substrate/frame/atomic-swap/Cargo.toml
@@ -17,10 +17,10 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../primitives/io" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
 
 [dev-dependencies]
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
diff --git a/substrate/frame/aura/Cargo.toml b/substrate/frame/aura/Cargo.toml
index f5c71a30885..f869ddb4170 100644
--- a/substrate/frame/aura/Cargo.toml
+++ b/substrate/frame/aura/Cargo.toml
@@ -13,19 +13,19 @@ readme = "README.md"
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-application-crypto = { version = "4.0.0", default-features = false, path = "../../primitives/application-crypto" }
+sp-application-crypto = { version = "5.0.0", default-features = false, path = "../../primitives/application-crypto" }
 codec = { package = "parity-scale-codec", version = "2.2.0", default-features = false, features = ["derive", "max-encoded-len"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 sp-consensus-aura = { version = "0.10.0-dev", path = "../../primitives/consensus/aura", default-features = false }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 pallet-timestamp = { version = "4.0.0-dev", default-features = false, path = "../timestamp" }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/authority-discovery/Cargo.toml b/substrate/frame/authority-discovery/Cargo.toml
index c1233028df4..b6e8a400f86 100644
--- a/substrate/frame/authority-discovery/Cargo.toml
+++ b/substrate/frame/authority-discovery/Cargo.toml
@@ -14,7 +14,7 @@ targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
 sp-authority-discovery = { version = "4.0.0-dev", default-features = false, path = "../../primitives/authority-discovery" }
-sp-application-crypto = { version = "4.0.0", default-features = false, path = "../../primitives/application-crypto" }
+sp-application-crypto = { version = "5.0.0", default-features = false, path = "../../primitives/application-crypto" }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = [
 	"derive",
 ] }
@@ -23,13 +23,13 @@ sp-std = { version = "4.0.0", default-features = false, path = "../../primitives
 pallet-session = { version = "4.0.0-dev", features = [
 	"historical",
 ], path = "../session", default-features = false }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/authorship/Cargo.toml b/substrate/frame/authorship/Cargo.toml
index c17fc49ecdc..31daa74553c 100644
--- a/substrate/frame/authorship/Cargo.toml
+++ b/substrate/frame/authorship/Cargo.toml
@@ -19,14 +19,14 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-authorship = { version = "4.0.0-dev", default-features = false, path = "../../primitives/authorship" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 impl-trait-for-tuples = "0.2.1"
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/babe/Cargo.toml b/substrate/frame/babe/Cargo.toml
index 673af5c30ed..f48877746b8 100644
--- a/substrate/frame/babe/Cargo.toml
+++ b/substrate/frame/babe/Cargo.toml
@@ -21,11 +21,11 @@ frame-system = { version = "4.0.0-dev", default-features = false, path = "../sys
 pallet-authorship = { version = "4.0.0-dev", default-features = false, path = "../authorship" }
 pallet-session = { version = "4.0.0-dev", default-features = false, path = "../session" }
 pallet-timestamp = { version = "4.0.0-dev", default-features = false, path = "../timestamp" }
-sp-application-crypto = { version = "4.0.0", default-features = false, path = "../../primitives/application-crypto" }
+sp-application-crypto = { version = "5.0.0", default-features = false, path = "../../primitives/application-crypto" }
 sp-consensus-babe = { version = "0.10.0-dev", default-features = false, path = "../../primitives/consensus/babe" }
 sp-consensus-vrf = { version = "0.10.0-dev", default-features = false, path = "../../primitives/consensus/vrf" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-session = { version = "4.0.0-dev", default-features = false, path = "../../primitives/session" }
 sp-staking = { version = "4.0.0-dev", default-features = false, path = "../../primitives/staking" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
@@ -36,7 +36,7 @@ pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 pallet-offences = { version = "4.0.0-dev", path = "../offences" }
 pallet-staking = { version = "4.0.0-dev", path = "../staking" }
 pallet-staking-reward-curve = { version = "4.0.0-dev", path = "../staking/reward-curve" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 frame-election-provider-support = { version = "4.0.0-dev", path = "../election-provider-support" }
 
 [features]
diff --git a/substrate/frame/bags-list/Cargo.toml b/substrate/frame/bags-list/Cargo.toml
index 9e802527f18..c35ff6fc6c3 100644
--- a/substrate/frame/bags-list/Cargo.toml
+++ b/substrate/frame/bags-list/Cargo.toml
@@ -18,7 +18,7 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 
 # primitives
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
 
 # FRAME
@@ -32,13 +32,13 @@ log = { version = "0.4.14", default-features = false }
 # Optional imports for benchmarking
 frame-benchmarking = { version = "4.0.0-dev", path = "../benchmarking", optional = true, default-features = false }
 pallet-balances = { version = "4.0.0-dev", path = "../balances", optional = true, default-features = false }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core", optional = true, default-features = false }
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io", optional = true, default-features = false }
+sp-core = { version = "5.0.0", path = "../../primitives/core", optional = true, default-features = false }
+sp-io = { version = "5.0.0", path = "../../primitives/io", optional = true, default-features = false }
 sp-tracing = { version = "4.0.0", path = "../../primitives/tracing", optional = true, default-features = false }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core"}
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io"}
+sp-core = { version = "5.0.0", path = "../../primitives/core"}
+sp-io = { version = "5.0.0", path = "../../primitives/io"}
 sp-tracing = { version = "4.0.0", path = "../../primitives/tracing" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 frame-election-provider-support = { version = "4.0.0-dev", path = "../election-provider-support", features = ["runtime-benchmarks"] }
diff --git a/substrate/frame/bags-list/remote-tests/Cargo.toml b/substrate/frame/bags-list/remote-tests/Cargo.toml
index b5122ebbafe..8f3ce53f8eb 100644
--- a/substrate/frame/bags-list/remote-tests/Cargo.toml
+++ b/substrate/frame/bags-list/remote-tests/Cargo.toml
@@ -21,10 +21,10 @@ frame-system = { path = "../../system", version = "4.0.0-dev" }
 frame-support = { path = "../../support", version = "4.0.0-dev" }
 
 # core
-sp-storage = { path = "../../../primitives/storage", version = "4.0.0" }
-sp-core = { path = "../../../primitives/core", version = "4.1.0-dev" }
+sp-storage = { path = "../../../primitives/storage", version = "5.0.0"}
+sp-core = { path = "../../../primitives/core", version = "5.0.0"}
 sp-tracing = { path = "../../../primitives/tracing", version = "4.0.0" }
-sp-runtime = { path = "../../../primitives/runtime", version = "4.1.0-dev" }
+sp-runtime = { path = "../../../primitives/runtime", version = "5.0.0"}
 sp-std = { path = "../../../primitives/std", version = "4.0.0" }
 
 # utils
diff --git a/substrate/frame/balances/Cargo.toml b/substrate/frame/balances/Cargo.toml
index 02b94fe606c..f594e67ab86 100644
--- a/substrate/frame/balances/Cargo.toml
+++ b/substrate/frame/balances/Cargo.toml
@@ -16,15 +16,15 @@ targets = ["x86_64-unknown-linux-gnu"]
 codec = { package = "parity-scale-codec", version = "2.2.0", default-features = false, features = ["derive", "max-encoded-len"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 log = { version = "0.4.14", default-features = false }
 
 [dev-dependencies]
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 pallet-transaction-payment = { version = "4.0.0-dev", path = "../transaction-payment" }
 
 [features]
diff --git a/substrate/frame/beefy-mmr/Cargo.toml b/substrate/frame/beefy-mmr/Cargo.toml
index c793173cc22..cfd18b26f9c 100644
--- a/substrate/frame/beefy-mmr/Cargo.toml
+++ b/substrate/frame/beefy-mmr/Cargo.toml
@@ -21,9 +21,9 @@ pallet-mmr = { version = "4.0.0-dev", path = "../merkle-mountain-range", default
 pallet-mmr-primitives = { version = "4.0.0-dev", path = "../merkle-mountain-range/primitives", default-features = false }
 pallet-session = { version = "4.0.0-dev", path = "../session", default-features = false }
 
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core", default-features = false }
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io", default-features = false }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime", default-features = false }
+sp-core = { version = "5.0.0", path = "../../primitives/core", default-features = false }
+sp-io = { version = "5.0.0", path = "../../primitives/io", default-features = false }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime", default-features = false }
 sp-std = { version = "4.0.0", path = "../../primitives/std", default-features = false }
 
 beefy-merkle-tree = { version = "4.0.0-dev", path = "./primitives", default-features = false }
diff --git a/substrate/frame/beefy/Cargo.toml b/substrate/frame/beefy/Cargo.toml
index 52471a332dd..13ccfb93801 100644
--- a/substrate/frame/beefy/Cargo.toml
+++ b/substrate/frame/beefy/Cargo.toml
@@ -15,7 +15,7 @@ serde = { version = "1.0.132", optional = true }
 frame-support = { version = "4.0.0-dev", path = "../support", default-features = false }
 frame-system = { version = "4.0.0-dev", path = "../system", default-features = false }
 
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime", default-features = false }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime", default-features = false }
 sp-std = { version = "4.0.0", path = "../../primitives/std", default-features = false }
 
 pallet-session = { version = "4.0.0-dev", path = "../session", default-features = false }
@@ -23,8 +23,8 @@ pallet-session = { version = "4.0.0-dev", path = "../session", default-features
 beefy-primitives = { version = "4.0.0-dev", path = "../../primitives/beefy", default-features = false }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
 sp-staking = { version = "4.0.0-dev", path = "../../primitives/staking" }
 
 [features]
diff --git a/substrate/frame/benchmarking/Cargo.toml b/substrate/frame/benchmarking/Cargo.toml
index ce110d8ba51..9afdc79fae6 100644
--- a/substrate/frame/benchmarking/Cargo.toml
+++ b/substrate/frame/benchmarking/Cargo.toml
@@ -18,19 +18,19 @@ paste = "1.0"
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-api = { version = "4.0.0-dev", path = "../../primitives/api", default-features = false }
-sp-runtime-interface = { version = "4.1.0-dev", path = "../../primitives/runtime-interface", default-features = false }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime", default-features = false }
+sp-runtime-interface = { version = "5.0.0", path = "../../primitives/runtime-interface", default-features = false }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime", default-features = false }
 sp-std = { version = "4.0.0", path = "../../primitives/std", default-features = false }
-sp-io = { version = "4.0.0", path = "../../primitives/io", default-features = false }
-sp-application-crypto = { version = "4.0.0", path = "../../primitives/application-crypto", default-features = false }
-sp-storage = { version = "4.0.0", path = "../../primitives/storage", default-features = false }
+sp-io = { version = "5.0.0", path = "../../primitives/io", default-features = false }
+sp-application-crypto = { version = "5.0.0", path = "../../primitives/application-crypto", default-features = false }
+sp-storage = { version = "5.0.0", path = "../../primitives/storage", default-features = false }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 log = { version = "0.4.14", default-features = false }
 
 [dev-dependencies]
 hex-literal = "0.3.4"
-sp-keystore = { version = "0.10.0", path = "../../primitives/keystore" }
+sp-keystore = { version = "0.11.0", path = "../../primitives/keystore" }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/bounties/Cargo.toml b/substrate/frame/bounties/Cargo.toml
index 73973ab18ca..477815a306f 100644
--- a/substrate/frame/bounties/Cargo.toml
+++ b/substrate/frame/bounties/Cargo.toml
@@ -18,12 +18,12 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 ] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 pallet-treasury = { version = "4.0.0-dev", default-features = false, path = "../treasury" }
-sp-io = { version = "4.0.0", path = "../../primitives/io", default-features = false }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core", default-features = false }
+sp-io = { version = "5.0.0", path = "../../primitives/io", default-features = false }
+sp-core = { version = "5.0.0", path = "../../primitives/core", default-features = false }
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 log = { version = "0.4.14", default-features = false }
 
diff --git a/substrate/frame/child-bounties/Cargo.toml b/substrate/frame/child-bounties/Cargo.toml
index 742110a58bf..0eeefd4de45 100644
--- a/substrate/frame/child-bounties/Cargo.toml
+++ b/substrate/frame/child-bounties/Cargo.toml
@@ -18,13 +18,13 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 ] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 pallet-treasury = { version = "4.0.0-dev", default-features = false, path = "../treasury" }
 pallet-bounties = { version = "4.0.0-dev", default-features = false, path = "../bounties" }
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io", default-features = false }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core", default-features = false }
+sp-io = { version = "5.0.0", path = "../../primitives/io", default-features = false }
+sp-core = { version = "5.0.0", path = "../../primitives/core", default-features = false }
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 log = { version = "0.4.14", default-features = false }
 
diff --git a/substrate/frame/collective/Cargo.toml b/substrate/frame/collective/Cargo.toml
index bd0573bace6..334b4945afa 100644
--- a/substrate/frame/collective/Cargo.toml
+++ b/substrate/frame/collective/Cargo.toml
@@ -17,9 +17,9 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 log = { version = "0.4.14", default-features = false }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
 
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
diff --git a/substrate/frame/contracts/Cargo.toml b/substrate/frame/contracts/Cargo.toml
index f0d2833c61f..f24e393daa2 100644
--- a/substrate/frame/contracts/Cargo.toml
+++ b/substrate/frame/contracts/Cargo.toml
@@ -36,11 +36,11 @@ rand_pcg = { version = "0.3", optional = true }
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
-pallet-contracts-primitives = { version = "4.0.0-dev", default-features = false, path = "common" }
+pallet-contracts-primitives = { version = "5.0.0", default-features = false, path = "common" }
 pallet-contracts-proc-macro = { version = "4.0.0-dev", path = "proc-macro" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-sandbox = { version = "0.10.0-dev", default-features = false, path = "../../primitives/sandbox" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
 
diff --git a/substrate/frame/contracts/common/Cargo.toml b/substrate/frame/contracts/common/Cargo.toml
index 05bfc212e30..ad934c41a71 100644
--- a/substrate/frame/contracts/common/Cargo.toml
+++ b/substrate/frame/contracts/common/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "pallet-contracts-primitives"
-version = "4.0.0-dev"
+version = "5.0.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 license = "Apache-2.0"
@@ -19,10 +19,10 @@ scale-info = { version = "1.0", default-features = false, features = ["derive"]
 serde = { version = "1", features = ["derive"], optional = true }
 
 # Substrate Dependencies (This crate should not rely on frame)
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core", default-features = false }
+sp-core = { version = "5.0.0", path = "../../../primitives/core", default-features = false }
 sp-std = { version = "4.0.0", default-features = false, path = "../../../primitives/std" }
-sp-rpc = { version = "4.0.0-dev", path = "../../../primitives/rpc", optional = true }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/runtime" }
+sp-rpc = { version = "5.0.0", path = "../../../primitives/rpc", optional = true }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../primitives/runtime" }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/contracts/rpc/Cargo.toml b/substrate/frame/contracts/rpc/Cargo.toml
index 9a88013c340..52ca0e6d834 100644
--- a/substrate/frame/contracts/rpc/Cargo.toml
+++ b/substrate/frame/contracts/rpc/Cargo.toml
@@ -20,13 +20,13 @@ jsonrpc-derive = "18.0.0"
 serde = { version = "1", features = ["derive"] }
 
 # Substrate Dependencies
-pallet-contracts-primitives = { version = "4.0.0-dev", path = "../common" }
+pallet-contracts-primitives = { version = "5.0.0", path = "../common" }
 pallet-contracts-rpc-runtime-api = { version = "4.0.0-dev", path = "./runtime-api" }
 sp-api = { version = "4.0.0-dev", path = "../../../primitives/api" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../primitives/blockchain" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
-sp-rpc = { version = "4.0.0-dev", path = "../../../primitives/rpc" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
+sp-rpc = { version = "5.0.0", path = "../../../primitives/rpc" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 
 [dev-dependencies]
 serde_json = "1"
diff --git a/substrate/frame/contracts/rpc/runtime-api/Cargo.toml b/substrate/frame/contracts/rpc/runtime-api/Cargo.toml
index bb70d0835d2..8ecdff51753 100644
--- a/substrate/frame/contracts/rpc/runtime-api/Cargo.toml
+++ b/substrate/frame/contracts/rpc/runtime-api/Cargo.toml
@@ -17,9 +17,9 @@ codec = { package = "parity-scale-codec", version = "2", default-features = fals
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 
 # Substrate Dependencies
-pallet-contracts-primitives = { version = "4.0.0-dev", default-features = false, path = "../../common" }
+pallet-contracts-primitives = { version = "5.0.0", default-features = false, path = "../../common" }
 sp-api = { version = "4.0.0-dev", default-features = false, path = "../../../../primitives/api" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../../../primitives/std" }
 
 [features]
diff --git a/substrate/frame/democracy/Cargo.toml b/substrate/frame/democracy/Cargo.toml
index 730bc6fffbd..125decaca82 100644
--- a/substrate/frame/democracy/Cargo.toml
+++ b/substrate/frame/democracy/Cargo.toml
@@ -19,14 +19,14 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 ] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 pallet-scheduler = { version = "4.0.0-dev", path = "../scheduler" }
 
diff --git a/substrate/frame/election-provider-multi-phase/Cargo.toml b/substrate/frame/election-provider-multi-phase/Cargo.toml
index 062e63f5fdf..c0d85737ec2 100644
--- a/substrate/frame/election-provider-multi-phase/Cargo.toml
+++ b/substrate/frame/election-provider-multi-phase/Cargo.toml
@@ -23,10 +23,10 @@ log = { version = "0.4.14", default-features = false }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-npos-elections = { version = "4.0.0-dev", default-features = false, path = "../../primitives/npos-elections" }
 sp-arithmetic = { version = "4.0.0", default-features = false, path = "../../primitives/arithmetic" }
 frame-election-provider-support = { version = "4.0.0-dev", default-features = false, path = "../election-provider-support" }
@@ -42,8 +42,8 @@ strum = { optional = true, default-features = false, version = "0.23.0", feature
 [dev-dependencies]
 parking_lot = "0.11.2"
 rand = { version = "0.7.3" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
 sp-npos-elections = { version = "4.0.0-dev", default-features = false, path = "../../primitives/npos-elections" }
 sp-tracing = { version = "4.0.0", path = "../../primitives/tracing" }
 frame-election-provider-support = { version = "4.0.0-dev", features = [
diff --git a/substrate/frame/election-provider-support/Cargo.toml b/substrate/frame/election-provider-support/Cargo.toml
index 1cb477d6c79..662762ef630 100644
--- a/substrate/frame/election-provider-support/Cargo.toml
+++ b/substrate/frame/election-provider-support/Cargo.toml
@@ -23,9 +23,9 @@ frame-system = { version = "4.0.0-dev", default-features = false, path = "../sys
 
 [dev-dependencies]
 sp-npos-elections = { version = "4.0.0-dev", path = "../../primitives/npos-elections" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/elections-phragmen/Cargo.toml b/substrate/frame/elections-phragmen/Cargo.toml
index 867b1627272..f70eb568349 100644
--- a/substrate/frame/elections-phragmen/Cargo.toml
+++ b/substrate/frame/elections-phragmen/Cargo.toml
@@ -17,19 +17,19 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 	"derive",
 ] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-npos-elections = { version = "4.0.0-dev", default-features = false, path = "../../primitives/npos-elections" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 log = { version = "0.4.14", default-features = false }
 
 [dev-dependencies]
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 substrate-test-utils = { version = "4.0.0-dev", path = "../../test-utils" }
 
 [features]
diff --git a/substrate/frame/examples/basic/Cargo.toml b/substrate/frame/examples/basic/Cargo.toml
index 894b9b4d501..73c11475fdf 100644
--- a/substrate/frame/examples/basic/Cargo.toml
+++ b/substrate/frame/examples/basic/Cargo.toml
@@ -21,12 +21,12 @@ frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../../system" }
 pallet-balances = { version = "4.0.0-dev", default-features = false, path = "../../balances" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/runtime" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../../primitives/std" }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core", default-features = false }
+sp-core = { version = "5.0.0", path = "../../../primitives/core", default-features = false }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/examples/offchain-worker/Cargo.toml b/substrate/frame/examples/offchain-worker/Cargo.toml
index 68ad2125eef..e7ae323050e 100644
--- a/substrate/frame/examples/offchain-worker/Cargo.toml
+++ b/substrate/frame/examples/offchain-worker/Cargo.toml
@@ -20,10 +20,10 @@ scale-info = { version = "1.0", default-features = false, features = ["derive"]
 
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../../system" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/core" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/io" }
-sp-keystore = { version = "0.10.0", path = "../../../primitives/keystore", optional = true }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../../primitives/core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../../primitives/io" }
+sp-keystore = { version = "0.11.0", path = "../../../primitives/keystore", optional = true }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../../primitives/std" }
 
 [features]
diff --git a/substrate/frame/examples/parallel/Cargo.toml b/substrate/frame/examples/parallel/Cargo.toml
index b3ec1a72506..8d291df1913 100644
--- a/substrate/frame/examples/parallel/Cargo.toml
+++ b/substrate/frame/examples/parallel/Cargo.toml
@@ -17,9 +17,9 @@ scale-info = { version = "1.0", default-features = false, features = ["derive"]
 
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../../system" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/core" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../../primitives/core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../../primitives/std" }
 sp-tasks = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/tasks" }
 
diff --git a/substrate/frame/executive/Cargo.toml b/substrate/frame/executive/Cargo.toml
index 1b6a237f3b9..b261aecdf92 100644
--- a/substrate/frame/executive/Cargo.toml
+++ b/substrate/frame/executive/Cargo.toml
@@ -19,16 +19,16 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-tracing = { version = "4.0.0", default-features = false, path = "../../primitives/tracing" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../primitives/io" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
 
 [dev-dependencies]
 hex-literal = "0.3.4"
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 pallet-transaction-payment = { version = "4.0.0-dev", path = "../transaction-payment" }
 sp-version = { version = "4.0.0-dev", path = "../../primitives/version" }
diff --git a/substrate/frame/gilt/Cargo.toml b/substrate/frame/gilt/Cargo.toml
index b958b7ba337..7ed17d152a0 100644
--- a/substrate/frame/gilt/Cargo.toml
+++ b/substrate/frame/gilt/Cargo.toml
@@ -16,15 +16,15 @@ targets = ["x86_64-unknown-linux-gnu"]
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-arithmetic = { version = "4.0.0", default-features = false, path = "../../primitives/arithmetic" }
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 
 [dev-dependencies]
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 
 [features]
diff --git a/substrate/frame/grandpa/Cargo.toml b/substrate/frame/grandpa/Cargo.toml
index 4b2ab7eca87..002ceed3692 100644
--- a/substrate/frame/grandpa/Cargo.toml
+++ b/substrate/frame/grandpa/Cargo.toml
@@ -15,13 +15,13 @@ targets = ["x86_64-unknown-linux-gnu"]
 [dependencies]
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
-sp-application-crypto = { version = "4.0.0", default-features = false, path = "../../primitives/application-crypto" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
+sp-application-crypto = { version = "5.0.0", default-features = false, path = "../../primitives/application-crypto" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
 sp-finality-grandpa = { version = "4.0.0-dev", default-features = false, path = "../../primitives/finality-grandpa" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
 sp-session = { version = "4.0.0-dev", default-features = false, path = "../../primitives/session" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-staking = { version = "4.0.0-dev", default-features = false, path = "../../primitives/staking" }
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
diff --git a/substrate/frame/identity/Cargo.toml b/substrate/frame/identity/Cargo.toml
index 00be4d767ec..209896ec0e5 100644
--- a/substrate/frame/identity/Cargo.toml
+++ b/substrate/frame/identity/Cargo.toml
@@ -17,14 +17,14 @@ codec = { package = "parity-scale-codec", version = "2.2.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 enumflags2 = { version = "0.6.2" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 
 [features]
diff --git a/substrate/frame/im-online/Cargo.toml b/substrate/frame/im-online/Cargo.toml
index 9d659d304db..d223e5e8502 100644
--- a/substrate/frame/im-online/Cargo.toml
+++ b/substrate/frame/im-online/Cargo.toml
@@ -13,14 +13,14 @@ readme = "README.md"
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-application-crypto = { version = "4.0.0", default-features = false, path = "../../primitives/application-crypto" }
+sp-application-crypto = { version = "5.0.0", default-features = false, path = "../../primitives/application-crypto" }
 pallet-authorship = { version = "4.0.0-dev", default-features = false, path = "../authorship" }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-staking = { version = "4.0.0-dev", default-features = false, path = "../../primitives/staking" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
diff --git a/substrate/frame/indices/Cargo.toml b/substrate/frame/indices/Cargo.toml
index a2998c7cfae..487eb471642 100644
--- a/substrate/frame/indices/Cargo.toml
+++ b/substrate/frame/indices/Cargo.toml
@@ -17,9 +17,9 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-keyring = { version = "4.1.0-dev", optional = true, path = "../../primitives/keyring" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 
diff --git a/substrate/frame/lottery/Cargo.toml b/substrate/frame/lottery/Cargo.toml
index cef152a1858..2e2c2287a2a 100644
--- a/substrate/frame/lottery/Cargo.toml
+++ b/substrate/frame/lottery/Cargo.toml
@@ -18,7 +18,7 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 ] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 
@@ -27,8 +27,8 @@ frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "
 [dev-dependencies]
 frame-support-test = { version = "3.0.0", path = "../support/test" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/membership/Cargo.toml b/substrate/frame/membership/Cargo.toml
index 7ded2fd586e..f2f7607ce9a 100644
--- a/substrate/frame/membership/Cargo.toml
+++ b/substrate/frame/membership/Cargo.toml
@@ -17,9 +17,9 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 log = { version = "0.4.0", default-features = false }
 
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
 
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
diff --git a/substrate/frame/merkle-mountain-range/Cargo.toml b/substrate/frame/merkle-mountain-range/Cargo.toml
index 495b0add5b1..a614ffa9771 100644
--- a/substrate/frame/merkle-mountain-range/Cargo.toml
+++ b/substrate/frame/merkle-mountain-range/Cargo.toml
@@ -16,9 +16,9 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 mmr-lib = { package = "ckb-merkle-mountain-range", default-features = false, version = "0.3.2" }
 
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
 
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
diff --git a/substrate/frame/merkle-mountain-range/primitives/Cargo.toml b/substrate/frame/merkle-mountain-range/primitives/Cargo.toml
index 2e483360fac..9df5094abd8 100644
--- a/substrate/frame/merkle-mountain-range/primitives/Cargo.toml
+++ b/substrate/frame/merkle-mountain-range/primitives/Cargo.toml
@@ -17,8 +17,8 @@ log = { version = "0.4.14", default-features = false }
 serde = { version = "1.0.132", optional = true, features = ["derive"] }
 
 sp-api = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/api" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/core" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../../primitives/core" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../../primitives/std" }
 
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../../support" }
diff --git a/substrate/frame/merkle-mountain-range/rpc/Cargo.toml b/substrate/frame/merkle-mountain-range/rpc/Cargo.toml
index d6bf66cefef..575b2a79fcd 100644
--- a/substrate/frame/merkle-mountain-range/rpc/Cargo.toml
+++ b/substrate/frame/merkle-mountain-range/rpc/Cargo.toml
@@ -21,8 +21,8 @@ serde = { version = "1.0.132", features = ["derive"] }
 
 sp-api = { version = "4.0.0-dev", path = "../../../primitives/api" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../primitives/blockchain" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 
 pallet-mmr-primitives = { version = "4.0.0-dev", path = "../primitives" }
 
diff --git a/substrate/frame/multisig/Cargo.toml b/substrate/frame/multisig/Cargo.toml
index 696f8afe0d8..dfc05888b1a 100644
--- a/substrate/frame/multisig/Cargo.toml
+++ b/substrate/frame/multisig/Cargo.toml
@@ -17,14 +17,14 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
 
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 
 [features]
diff --git a/substrate/frame/nicks/Cargo.toml b/substrate/frame/nicks/Cargo.toml
index 221a386c752..bf5afd26ebb 100644
--- a/substrate/frame/nicks/Cargo.toml
+++ b/substrate/frame/nicks/Cargo.toml
@@ -16,13 +16,13 @@ targets = ["x86_64-unknown-linux-gnu"]
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 
 [features]
diff --git a/substrate/frame/node-authorization/Cargo.toml b/substrate/frame/node-authorization/Cargo.toml
index 610e536a2c8..0d642518853 100644
--- a/substrate/frame/node-authorization/Cargo.toml
+++ b/substrate/frame/node-authorization/Cargo.toml
@@ -16,9 +16,9 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
 log = { version = "0.4.14", default-features = false }
 
diff --git a/substrate/frame/offences/Cargo.toml b/substrate/frame/offences/Cargo.toml
index 49aa1d770e5..6fe36aea89e 100644
--- a/substrate/frame/offences/Cargo.toml
+++ b/substrate/frame/offences/Cargo.toml
@@ -18,15 +18,15 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
 serde = { version = "1.0.132", optional = true }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-staking = { version = "4.0.0-dev", default-features = false, path = "../../primitives/staking" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 log = { version = "0.4.14", default-features = false }
 
 [dev-dependencies]
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/offences/benchmarking/Cargo.toml b/substrate/frame/offences/benchmarking/Cargo.toml
index 2764eedc119..97425453832 100644
--- a/substrate/frame/offences/benchmarking/Cargo.toml
+++ b/substrate/frame/offences/benchmarking/Cargo.toml
@@ -29,7 +29,7 @@ pallet-session = { version = "4.0.0-dev", default-features = false, path = "../.
 pallet-staking = { version = "4.0.0-dev", default-features = false, features = [
 	"runtime-benchmarks",
 ], path = "../../staking" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../primitives/runtime" }
 sp-staking = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/staking" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../../primitives/std" }
 frame-election-provider-support = { version = "4.0.0-dev", default-features = false, path = "../../election-provider-support" }
@@ -37,8 +37,8 @@ frame-election-provider-support = { version = "4.0.0-dev", default-features = fa
 [dev-dependencies]
 pallet-staking-reward-curve = { version = "4.0.0-dev", path = "../../staking/reward-curve" }
 pallet-timestamp = { version = "4.0.0-dev", path = "../../timestamp" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
-sp-io = { version = "4.0.0-dev", path = "../../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../../primitives/io" }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/preimage/Cargo.toml b/substrate/frame/preimage/Cargo.toml
index 17fed986f75..66ef8467be2 100644
--- a/substrate/frame/preimage/Cargo.toml
+++ b/substrate/frame/preimage/Cargo.toml
@@ -14,15 +14,15 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../primitives/io" }
-sp-core = { version = "4.1.0-dev", default-features = false, optional = true, path = "../../primitives/core" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-core = { version = "5.0.0", default-features = false, optional = true, path = "../../primitives/core" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core", default-features = false }
+sp-core = { version = "5.0.0", path = "../../primitives/core", default-features = false }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 
 [features]
diff --git a/substrate/frame/proxy/Cargo.toml b/substrate/frame/proxy/Cargo.toml
index a07ecb49977..f0bd9391789 100644
--- a/substrate/frame/proxy/Cargo.toml
+++ b/substrate/frame/proxy/Cargo.toml
@@ -17,14 +17,14 @@ codec = { package = "parity-scale-codec", version = "2.2.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
 
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 pallet-utility = { version = "4.0.0-dev", path = "../utility" }
 
diff --git a/substrate/frame/randomness-collective-flip/Cargo.toml b/substrate/frame/randomness-collective-flip/Cargo.toml
index a29e7ac7b32..a93585700f2 100644
--- a/substrate/frame/randomness-collective-flip/Cargo.toml
+++ b/substrate/frame/randomness-collective-flip/Cargo.toml
@@ -16,15 +16,15 @@ targets = ["x86_64-unknown-linux-gnu"]
 safe-mix = { version = "1.0", default-features = false }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
 
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/recovery/Cargo.toml b/substrate/frame/recovery/Cargo.toml
index 53fe6851564..88da65327e2 100644
--- a/substrate/frame/recovery/Cargo.toml
+++ b/substrate/frame/recovery/Cargo.toml
@@ -16,13 +16,13 @@ targets = ["x86_64-unknown-linux-gnu"]
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 
 [features]
diff --git a/substrate/frame/scheduler/Cargo.toml b/substrate/frame/scheduler/Cargo.toml
index 424c3852862..d88063d69c5 100644
--- a/substrate/frame/scheduler/Cargo.toml
+++ b/substrate/frame/scheduler/Cargo.toml
@@ -14,15 +14,15 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 log = { version = "0.4.14", default-features = false }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../primitives/io" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
 
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core", default-features = false }
+sp-core = { version = "5.0.0", path = "../../primitives/core", default-features = false }
 substrate-test-utils = { version = "4.0.0-dev", path = "../../test-utils" }
 pallet-preimage = { version = "4.0.0-dev", path = "../preimage" }
 
diff --git a/substrate/frame/scored-pool/Cargo.toml b/substrate/frame/scored-pool/Cargo.toml
index b97a7e36649..af8b0f6aa26 100644
--- a/substrate/frame/scored-pool/Cargo.toml
+++ b/substrate/frame/scored-pool/Cargo.toml
@@ -15,15 +15,15 @@ targets = ["x86_64-unknown-linux-gnu"]
 [dependencies]
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 
 [dev-dependencies]
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/session/Cargo.toml b/substrate/frame/session/Cargo.toml
index db6f10c7288..a342865615d 100644
--- a/substrate/frame/session/Cargo.toml
+++ b/substrate/frame/session/Cargo.toml
@@ -20,12 +20,12 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-session = { version = "4.0.0-dev", default-features = false, path = "../../primitives/session" }
 sp-staking = { version = "4.0.0-dev", default-features = false, path = "../../primitives/staking" }
-sp-trie = { version = "4.0.0", default-features = false, path = "../../primitives/trie", optional = true }
+sp-trie = { version = "5.0.0", default-features = false, path = "../../primitives/trie", optional = true }
 
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
diff --git a/substrate/frame/session/benchmarking/Cargo.toml b/substrate/frame/session/benchmarking/Cargo.toml
index 10a430d52b0..cd33c5b1864 100644
--- a/substrate/frame/session/benchmarking/Cargo.toml
+++ b/substrate/frame/session/benchmarking/Cargo.toml
@@ -16,7 +16,7 @@ targets = ["x86_64-unknown-linux-gnu"]
 rand = { version = "0.7.2", default-features = false }
 
 sp-std = { version = "4.0.0", default-features = false, path = "../../../primitives/std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../primitives/runtime" }
 sp-session = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/session" }
 
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../../benchmarking" }
@@ -28,8 +28,8 @@ pallet-staking = { version = "4.0.0-dev", default-features = false, features = [
 [dev-dependencies]
 codec = { package = "parity-scale-codec", version = "2.0.0", features = ["derive"] }
 scale-info = "1.0"
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
-sp-io = { version = "4.0.0-dev", path = "../../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../../primitives/io" }
 pallet-balances = { version = "4.0.0-dev", path = "../../balances" }
 pallet-timestamp = { version = "4.0.0-dev", path = "../../timestamp" }
 pallet-staking-reward-curve = { version = "4.0.0-dev", path = "../../staking/reward-curve" }
diff --git a/substrate/frame/society/Cargo.toml b/substrate/frame/society/Cargo.toml
index fa3f981f19d..2787453d49d 100644
--- a/substrate/frame/society/Cargo.toml
+++ b/substrate/frame/society/Cargo.toml
@@ -15,15 +15,15 @@ targets = ["x86_64-unknown-linux-gnu"]
 [dependencies]
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 rand_chacha = { version = "0.2", default-features = false }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-io ={ version = "4.0.0-dev", path = "../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-io ={ version = "5.0.0", path = "../../primitives/io" }
 frame-support-test = { version = "3.0.0", path = "../support/test" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 
diff --git a/substrate/frame/staking/Cargo.toml b/substrate/frame/staking/Cargo.toml
index e0d5dabaa89..cd1e238dbd0 100644
--- a/substrate/frame/staking/Cargo.toml
+++ b/substrate/frame/staking/Cargo.toml
@@ -19,8 +19,8 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 ] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-staking = { version = "4.0.0-dev", default-features = false, path = "../../primitives/staking" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
@@ -28,7 +28,7 @@ pallet-session = { version = "4.0.0-dev", default-features = false, features = [
 	"historical",
 ], path = "../session" }
 pallet-authorship = { version = "4.0.0-dev", default-features = false, path = "../authorship" }
-sp-application-crypto = { version = "4.0.0", default-features = false, path = "../../primitives/application-crypto" }
+sp-application-crypto = { version = "5.0.0", default-features = false, path = "../../primitives/application-crypto" }
 frame-election-provider-support = { version = "4.0.0-dev", default-features = false, path = "../election-provider-support" }
 log = { version = "0.4.14", default-features = false }
 
@@ -38,7 +38,7 @@ rand_chacha = { version = "0.2", default-features = false, optional = true }
 
 [dev-dependencies]
 sp-tracing = { version = "4.0.0", path = "../../primitives/tracing" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 sp-npos-elections = { version = "4.0.0-dev", path = "../../primitives/npos-elections" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 pallet-timestamp = { version = "4.0.0-dev", path = "../timestamp" }
diff --git a/substrate/frame/staking/reward-curve/Cargo.toml b/substrate/frame/staking/reward-curve/Cargo.toml
index 4c1d2b922f6..86fdd09076e 100644
--- a/substrate/frame/staking/reward-curve/Cargo.toml
+++ b/substrate/frame/staking/reward-curve/Cargo.toml
@@ -21,4 +21,4 @@ proc-macro2 = "1.0.36"
 proc-macro-crate = "1.1.0"
 
 [dev-dependencies]
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
diff --git a/substrate/frame/sudo/Cargo.toml b/substrate/frame/sudo/Cargo.toml
index 504eb37b8d0..063ea52d5b8 100644
--- a/substrate/frame/sudo/Cargo.toml
+++ b/substrate/frame/sudo/Cargo.toml
@@ -16,13 +16,13 @@ targets = ["x86_64-unknown-linux-gnu"]
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/support/Cargo.toml b/substrate/frame/support/Cargo.toml
index d652e5ea434..5e8c26b6ae5 100644
--- a/substrate/frame/support/Cargo.toml
+++ b/substrate/frame/support/Cargo.toml
@@ -18,10 +18,10 @@ codec = { package = "parity-scale-codec", version = "2.2.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 frame-metadata = { version = "14.2.0", default-features = false, features = ["v14"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-tracing = { version = "4.0.0", default-features = false, path = "../../primitives/tracing" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
 sp-arithmetic = { version = "4.0.0", default-features = false, path = "../../primitives/arithmetic" }
 sp-inherents = { version = "4.0.0-dev", default-features = false, path = "../../primitives/inherents" }
 sp-staking = { version = "4.0.0-dev", default-features = false, path = "../../primitives/staking" }
@@ -29,7 +29,7 @@ tt-call = "1.0.8"
 frame-support-procedural = { version = "4.0.0-dev", default-features = false, path = "./procedural" }
 paste = "1.0"
 once_cell = { version = "1", default-features = false, optional = true }
-sp-state-machine = { version = "0.10.0", optional = true, path = "../../primitives/state-machine" }
+sp-state-machine = { version = "0.11.0", optional = true, path = "../../primitives/state-machine" }
 bitflags = "1.3"
 impl-trait-for-tuples = "0.2.1"
 smallvec = "1.7.0"
diff --git a/substrate/frame/support/test/Cargo.toml b/substrate/frame/support/test/Cargo.toml
index 257cca3218d..5a27f4f46e1 100644
--- a/substrate/frame/support/test/Cargo.toml
+++ b/substrate/frame/support/test/Cargo.toml
@@ -16,11 +16,11 @@ serde = { version = "1.0.132", default-features = false, features = ["derive"] }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-arithmetic = { version = "4.0.0", default-features = false, path = "../../../primitives/arithmetic" }
-sp-io = { version = "4.0.0", path = "../../../primitives/io", default-features = false }
-sp-state-machine = { version = "0.10.0", optional = true, path = "../../../primitives/state-machine" }
+sp-io = { version = "5.0.0", path = "../../../primitives/io", default-features = false }
+sp-state-machine = { version = "0.11.0", optional = true, path = "../../../primitives/state-machine" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/runtime" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/core" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../../primitives/core" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../../primitives/std" }
 sp-version = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/version" }
 trybuild = "1.0.53"
diff --git a/substrate/frame/support/test/compile_pass/Cargo.toml b/substrate/frame/support/test/compile_pass/Cargo.toml
index 93443e33503..aaa080f84f1 100644
--- a/substrate/frame/support/test/compile_pass/Cargo.toml
+++ b/substrate/frame/support/test/compile_pass/Cargo.toml
@@ -14,8 +14,8 @@ targets = ["x86_64-unknown-linux-gnu"]
 [dependencies]
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../../../primitives/core" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../../../primitives/core" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../../primitives/runtime" }
 sp-version = { version = "4.0.0-dev", default-features = false, path = "../../../../primitives/version" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../../" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../../../system" }
diff --git a/substrate/frame/system/Cargo.toml b/substrate/frame/system/Cargo.toml
index ae9242087f1..f1e7e4e2075 100644
--- a/substrate/frame/system/Cargo.toml
+++ b/substrate/frame/system/Cargo.toml
@@ -16,17 +16,17 @@ targets = ["x86_64-unknown-linux-gnu"]
 serde = { version = "1.0.132", optional = true, features = ["derive"] }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0", path = "../../primitives/io", default-features = false }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-io = { version = "5.0.0", path = "../../primitives/io", default-features = false }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-version = { version = "4.0.0-dev", default-features = false, path = "../../primitives/version" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 log = { version = "0.4.14", default-features = false }
 
 [dev-dependencies]
 criterion = "0.3.3"
-sp-externalities = { version = "0.10.0", path = "../../primitives/externalities" }
+sp-externalities = { version = "0.11.0", path = "../../primitives/externalities" }
 substrate-test-runtime-client = { version = "2.0.0", path = "../../test-utils/runtime/client" }
 
 [features]
diff --git a/substrate/frame/system/benchmarking/Cargo.toml b/substrate/frame/system/benchmarking/Cargo.toml
index 4ca250fa0ec..fa86250c199 100644
--- a/substrate/frame/system/benchmarking/Cargo.toml
+++ b/substrate/frame/system/benchmarking/Cargo.toml
@@ -16,14 +16,14 @@ targets = ["x86_64-unknown-linux-gnu"]
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../../primitives/std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../primitives/runtime" }
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../../benchmarking" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../../system" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../../support" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/core" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../../primitives/core" }
 
 [dev-dependencies]
-sp-io = { version = "4.0.0", path = "../../../primitives/io" }
+sp-io = { version = "5.0.0", path = "../../../primitives/io" }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/timestamp/Cargo.toml b/substrate/frame/timestamp/Cargo.toml
index b66a91aceba..f42a9501058 100644
--- a/substrate/frame/timestamp/Cargo.toml
+++ b/substrate/frame/timestamp/Cargo.toml
@@ -18,8 +18,8 @@ targets = ["x86_64-unknown-linux-gnu"]
 codec = { package = "parity-scale-codec", version = "2.2.0", default-features = false, features = ["derive", "max-encoded-len"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io", optional = true }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io", optional = true }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-inherents = { version = "4.0.0-dev", default-features = false, path = "../../primitives/inherents" }
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
@@ -28,8 +28,8 @@ sp-timestamp = { version = "4.0.0-dev", default-features = false, path = "../../
 log = { version = "0.4.14", default-features = false }
 
 [dev-dependencies]
-sp-io ={ version = "4.0.0-dev", path = "../../primitives/io" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-io ={ version = "5.0.0", path = "../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/tips/Cargo.toml b/substrate/frame/tips/Cargo.toml
index bbe78fd30a5..182a87048d3 100644
--- a/substrate/frame/tips/Cargo.toml
+++ b/substrate/frame/tips/Cargo.toml
@@ -18,9 +18,9 @@ log = { version = "0.4.0", default-features = false }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 serde = { version = "1.0.132", features = ["derive"], optional = true }
 
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
 
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
@@ -30,7 +30,7 @@ pallet-treasury = { version = "4.0.0-dev", default-features = false, path = "../
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 
 [dev-dependencies]
-sp-storage = { version = "4.0.0", path = "../../primitives/storage" }
+sp-storage = { version = "5.0.0", path = "../../primitives/storage" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 
 [features]
diff --git a/substrate/frame/transaction-payment/Cargo.toml b/substrate/frame/transaction-payment/Cargo.toml
index 8cb544159dd..b9b46380a38 100644
--- a/substrate/frame/transaction-payment/Cargo.toml
+++ b/substrate/frame/transaction-payment/Cargo.toml
@@ -20,9 +20,9 @@ scale-info = { version = "1.0", default-features = false, features = ["derive"]
 serde = { version = "1.0.132", optional = true }
 smallvec = "1.7.0"
 
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core", default-features = false }
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io", default-features = false }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../primitives/core", default-features = false }
+sp-io = { version = "5.0.0", path = "../../primitives/io", default-features = false }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
 
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
diff --git a/substrate/frame/transaction-payment/asset-tx-payment/Cargo.toml b/substrate/frame/transaction-payment/asset-tx-payment/Cargo.toml
index ab2d3302f95..300d05d0ed9 100644
--- a/substrate/frame/transaction-payment/asset-tx-payment/Cargo.toml
+++ b/substrate/frame/transaction-payment/asset-tx-payment/Cargo.toml
@@ -14,9 +14,9 @@ targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
 # Substrate dependencies
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/core" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/io" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../../primitives/core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../../primitives/io" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../../primitives/std" }
 
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../../support" }
@@ -32,7 +32,7 @@ serde = { version = "1.0.132", optional = true }
 smallvec = "1.7.0"
 serde_json = "1.0.74"
 
-sp-storage = { version = "4.0.0", default-features = false, path = "../../../primitives/storage" }
+sp-storage = { version = "5.0.0", default-features = false, path = "../../../primitives/storage" }
 
 pallet-assets = { version = "4.0.0-dev", path = "../../assets" }
 pallet-authorship = { version = "4.0.0-dev", path = "../../authorship" }
diff --git a/substrate/frame/transaction-payment/rpc/Cargo.toml b/substrate/frame/transaction-payment/rpc/Cargo.toml
index 2486654404a..844e898ed86 100644
--- a/substrate/frame/transaction-payment/rpc/Cargo.toml
+++ b/substrate/frame/transaction-payment/rpc/Cargo.toml
@@ -20,7 +20,7 @@ jsonrpc-derive = "18.0.0"
 
 sp-api = { version = "4.0.0-dev", path = "../../../primitives/api" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../primitives/blockchain" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
-sp-rpc = { version = "4.0.0-dev", path = "../../../primitives/rpc" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
+sp-rpc = { version = "5.0.0", path = "../../../primitives/rpc" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 pallet-transaction-payment-rpc-runtime-api = { version = "4.0.0-dev", path = "./runtime-api" }
diff --git a/substrate/frame/transaction-payment/rpc/runtime-api/Cargo.toml b/substrate/frame/transaction-payment/rpc/runtime-api/Cargo.toml
index 1ad56280ac0..fed57eb5bf7 100644
--- a/substrate/frame/transaction-payment/rpc/runtime-api/Cargo.toml
+++ b/substrate/frame/transaction-payment/rpc/runtime-api/Cargo.toml
@@ -15,7 +15,7 @@ targets = ["x86_64-unknown-linux-gnu"]
 [dependencies]
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 sp-api = { version = "4.0.0-dev", default-features = false, path = "../../../../primitives/api" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../../../primitives/runtime" }
 pallet-transaction-payment = { version = "4.0.0-dev", default-features = false, path = "../../../transaction-payment" }
 
 [features]
diff --git a/substrate/frame/transaction-storage/Cargo.toml b/substrate/frame/transaction-storage/Cargo.toml
index e4351438811..5adf5fd2c1f 100644
--- a/substrate/frame/transaction-storage/Cargo.toml
+++ b/substrate/frame/transaction-storage/Cargo.toml
@@ -20,16 +20,16 @@ scale-info = { version = "1.0", default-features = false, features = ["derive"]
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 pallet-balances = { version = "4.0.0-dev", default-features = false, path = "../balances" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
 sp-inherents = { version = "4.0.0-dev", default-features = false, path = "../../primitives/inherents" }
 sp-transaction-storage-proof = { version = "4.0.0-dev", default-features = false, path = "../../primitives/transaction-storage-proof" }
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 
 [dev-dependencies]
 sp-transaction-storage-proof = { version = "4.0.0-dev", default-features = true, path = "../../primitives/transaction-storage-proof" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core", default-features = false }
+sp-core = { version = "5.0.0", path = "../../primitives/core", default-features = false }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/treasury/Cargo.toml b/substrate/frame/treasury/Cargo.toml
index 0a2dab417e3..d126d0ffa34 100644
--- a/substrate/frame/treasury/Cargo.toml
+++ b/substrate/frame/treasury/Cargo.toml
@@ -22,7 +22,7 @@ serde = { version = "1.0.132", features = ["derive"], optional = true }
 impl-trait-for-tuples = "0.2.1"
 
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
@@ -31,8 +31,8 @@ pallet-balances = { version = "4.0.0-dev", default-features = false, path = "../
 
 
 [dev-dependencies]
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 
 [features]
 default = ["std"]
diff --git a/substrate/frame/try-runtime/Cargo.toml b/substrate/frame/try-runtime/Cargo.toml
index 905c58ab00b..0546c0a898f 100644
--- a/substrate/frame/try-runtime/Cargo.toml
+++ b/substrate/frame/try-runtime/Cargo.toml
@@ -15,7 +15,7 @@ targets = ["x86_64-unknown-linux-gnu"]
 [dependencies]
 sp-api = { version = "4.0.0-dev", path = "../../primitives/api", default-features = false }
 sp-std = { version = "4.0.0", path = "../../primitives/std" , default-features = false }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" , default-features = false }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" , default-features = false }
 
 frame-support = { version = "4.0.0-dev", path = "../support", default-features = false }
 
diff --git a/substrate/frame/uniques/Cargo.toml b/substrate/frame/uniques/Cargo.toml
index 38c519f8016..4e0194b17ac 100644
--- a/substrate/frame/uniques/Cargo.toml
+++ b/substrate/frame/uniques/Cargo.toml
@@ -16,7 +16,7 @@ targets = ["x86_64-unknown-linux-gnu"]
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
@@ -24,8 +24,8 @@ log = { version = "0.4.14", default-features = false }
 
 [dev-dependencies]
 sp-std = { version = "4.0.0", path = "../../primitives/std" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-io = { version = "4.0.0-dev", path = "../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../primitives/io" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 
 [features]
diff --git a/substrate/frame/utility/Cargo.toml b/substrate/frame/utility/Cargo.toml
index 85f522975db..ea3977c1b8b 100644
--- a/substrate/frame/utility/Cargo.toml
+++ b/substrate/frame/utility/Cargo.toml
@@ -17,15 +17,15 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
 
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 
 [dev-dependencies]
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 
 [features]
diff --git a/substrate/frame/vesting/Cargo.toml b/substrate/frame/vesting/Cargo.toml
index e488e282cd4..f7dcfd9fa44 100644
--- a/substrate/frame/vesting/Cargo.toml
+++ b/substrate/frame/vesting/Cargo.toml
@@ -18,15 +18,15 @@ codec = { package = "parity-scale-codec", version = "2.0.0", default-features =
 ] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../support" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../system" }
 frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../benchmarking", optional = true }
 log = { version = "0.4.0", default-features = false  }
 
 [dev-dependencies]
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../primitives/io" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
 pallet-balances = { version = "4.0.0-dev", path = "../balances" }
 
 [features]
diff --git a/substrate/primitives/api/Cargo.toml b/substrate/primitives/api/Cargo.toml
index f2c3e67800d..ab81ed85f18 100644
--- a/substrate/primitives/api/Cargo.toml
+++ b/substrate/primitives/api/Cargo.toml
@@ -15,11 +15,11 @@ targets = ["x86_64-unknown-linux-gnu"]
 [dependencies]
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false }
 sp-api-proc-macro = { version = "4.0.0-dev", path = "proc-macro" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../core" }
+sp-core = { version = "5.0.0", default-features = false, path = "../core" }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../runtime" }
 sp-version = { version = "4.0.0-dev", default-features = false, path = "../version" }
-sp-state-machine = { version = "0.10.0", optional = true, path = "../state-machine" }
+sp-state-machine = { version = "0.11.0", optional = true, path = "../state-machine" }
 hash-db = { version = "0.15.2", optional = true }
 thiserror = { version = "1.0.30", optional = true }
 
diff --git a/substrate/primitives/api/test/Cargo.toml b/substrate/primitives/api/test/Cargo.toml
index 79e302c4c06..064e6a6c981 100644
--- a/substrate/primitives/api/test/Cargo.toml
+++ b/substrate/primitives/api/test/Cargo.toml
@@ -16,11 +16,11 @@ sp-api = { version = "4.0.0-dev", path = "../" }
 substrate-test-runtime-client = { version = "2.0.0", path = "../../../test-utils/runtime/client" }
 sp-version = { version = "4.0.0-dev", path = "../../version" }
 sp-tracing = { version = "4.0.0", path = "../../tracing" }
-sp-runtime = { version = "4.1.0-dev", path = "../../runtime" }
+sp-runtime = { version = "5.0.0", path = "../../runtime" }
 sp-consensus = { version = "0.10.0-dev", path = "../../consensus/common" }
 sc-block-builder = { version = "0.10.0-dev", path = "../../../client/block-builder" }
 codec = { package = "parity-scale-codec", version = "2.0.0" }
-sp-state-machine = { version = "0.10.0", path = "../../state-machine" }
+sp-state-machine = { version = "0.11.0", path = "../../state-machine" }
 trybuild = "1.0.53"
 rustversion = "1.0.6"
 
@@ -28,7 +28,7 @@ rustversion = "1.0.6"
 criterion = "0.3.0"
 futures = "0.3.9"
 log = "0.4.14"
-sp-core = { version = "4.1.0-dev", path = "../../core" }
+sp-core = { version = "5.0.0", path = "../../core" }
 
 [[bench]]
 name = "bench"
diff --git a/substrate/primitives/application-crypto/Cargo.toml b/substrate/primitives/application-crypto/Cargo.toml
index 75766905d14..a3dfa8646e7 100644
--- a/substrate/primitives/application-crypto/Cargo.toml
+++ b/substrate/primitives/application-crypto/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "sp-application-crypto"
-version = "4.0.0"
+version = "5.0.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 description = "Provides facilities for generating application specific crypto wrapper types."
@@ -15,12 +15,12 @@ targets = ["x86_64-unknown-linux-gnu"]
 
 
 [dependencies]
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../core" }
+sp-core = { version = "5.0.0", default-features = false, path = "../core" }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 serde = { version = "1.0.132", optional = true, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
-sp-io = { version = "4.0.0", default-features = false, path = "../io" }
+sp-io = { version = "5.0.0", default-features = false, path = "../io" }
 
 [features]
 default = [ "std" ]
diff --git a/substrate/primitives/application-crypto/test/Cargo.toml b/substrate/primitives/application-crypto/test/Cargo.toml
index 17893286961..515be41be3d 100644
--- a/substrate/primitives/application-crypto/test/Cargo.toml
+++ b/substrate/primitives/application-crypto/test/Cargo.toml
@@ -13,9 +13,9 @@ repository = "https://github.com/paritytech/substrate/"
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../core" }
-sp-keystore = { version = "0.10.0", path = "../../keystore", default-features = false }
+sp-core = { version = "5.0.0", default-features = false, path = "../../core" }
+sp-keystore = { version = "0.11.0", path = "../../keystore", default-features = false }
 substrate-test-runtime-client = { version = "2.0.0", path = "../../../test-utils/runtime/client" }
-sp-runtime = { version = "4.1.0-dev", path = "../../runtime" }
+sp-runtime = { version = "5.0.0", path = "../../runtime" }
 sp-api = { version = "4.0.0-dev", path = "../../api" }
-sp-application-crypto = { version = "4.0.0", path = "../" }
+sp-application-crypto = { version = "5.0.0", path = "../" }
diff --git a/substrate/primitives/authority-discovery/Cargo.toml b/substrate/primitives/authority-discovery/Cargo.toml
index 2fd2c484769..7c6aa7a6ea0 100644
--- a/substrate/primitives/authority-discovery/Cargo.toml
+++ b/substrate/primitives/authority-discovery/Cargo.toml
@@ -13,12 +13,12 @@ readme = "README.md"
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-application-crypto = { version = "4.0.0", default-features = false, path = "../application-crypto" }
+sp-application-crypto = { version = "5.0.0", default-features = false, path = "../application-crypto" }
 codec = { package = "parity-scale-codec", default-features = false, version = "2.0.0" }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
 sp-api = { version = "4.0.0-dev", default-features = false, path = "../api" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../runtime" }
 
 [features]
 default = ["std"]
diff --git a/substrate/primitives/authorship/Cargo.toml b/substrate/primitives/authorship/Cargo.toml
index 8e97942499a..4cf8e6e9522 100644
--- a/substrate/primitives/authorship/Cargo.toml
+++ b/substrate/primitives/authorship/Cargo.toml
@@ -14,7 +14,7 @@ targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
 sp-inherents = { version = "4.0.0-dev", default-features = false, path = "../inherents" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 async-trait = { version = "0.1.50", optional = true }
diff --git a/substrate/primitives/beefy/Cargo.toml b/substrate/primitives/beefy/Cargo.toml
index edcb2244e58..9d8ec2a653e 100644
--- a/substrate/primitives/beefy/Cargo.toml
+++ b/substrate/primitives/beefy/Cargo.toml
@@ -12,15 +12,15 @@ codec = { version = "2.2.0", package = "parity-scale-codec", default-features =
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 
 sp-api = { version = "4.0.0-dev", path = "../api", default-features = false }
-sp-application-crypto = { version = "4.0.0", path = "../application-crypto", default-features = false }
-sp-core = { version = "4.1.0-dev", path = "../core", default-features = false }
-sp-runtime = { version = "4.1.0-dev", path = "../runtime", default-features = false }
+sp-application-crypto = { version = "5.0.0", path = "../application-crypto", default-features = false }
+sp-core = { version = "5.0.0", path = "../core", default-features = false }
+sp-runtime = { version = "5.0.0", path = "../runtime", default-features = false }
 sp-std = { version = "4.0.0", path = "../std", default-features = false }
 
 [dev-dependencies]
 hex = "0.4.3"
 hex-literal = "0.3"
-sp-keystore = { version = "0.10.0", path = "../keystore" }
+sp-keystore = { version = "0.11.0", path = "../keystore" }
 
 [features]
 default = ["std"]
diff --git a/substrate/primitives/block-builder/Cargo.toml b/substrate/primitives/block-builder/Cargo.toml
index 5009207a3f5..28f76343c7e 100644
--- a/substrate/primitives/block-builder/Cargo.toml
+++ b/substrate/primitives/block-builder/Cargo.toml
@@ -13,7 +13,7 @@ readme = "README.md"
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../runtime" }
 sp-api = { version = "4.0.0-dev", default-features = false, path = "../api" }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false }
diff --git a/substrate/primitives/blockchain/Cargo.toml b/substrate/primitives/blockchain/Cargo.toml
index 366d0f3c373..89737dbac0c 100644
--- a/substrate/primitives/blockchain/Cargo.toml
+++ b/substrate/primitives/blockchain/Cargo.toml
@@ -21,7 +21,7 @@ thiserror = "1.0.30"
 futures = "0.3.9"
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 sp-consensus = { version = "0.10.0-dev", path = "../consensus/common" }
-sp-runtime = { version = "4.1.0-dev", path = "../runtime" }
-sp-state-machine = { version = "0.10.0", path = "../state-machine" }
+sp-runtime = { version = "5.0.0", path = "../runtime" }
+sp-state-machine = { version = "0.11.0", path = "../state-machine" }
 sp-database = { version = "4.0.0-dev", path = "../database" }
 sp-api = { version = "4.0.0-dev", path = "../api" }
diff --git a/substrate/primitives/consensus/aura/Cargo.toml b/substrate/primitives/consensus/aura/Cargo.toml
index f15f0008164..e78de2db17b 100644
--- a/substrate/primitives/consensus/aura/Cargo.toml
+++ b/substrate/primitives/consensus/aura/Cargo.toml
@@ -13,12 +13,12 @@ readme = "README.md"
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-application-crypto = { version = "4.0.0", default-features = false, path = "../../application-crypto" }
+sp-application-crypto = { version = "5.0.0", default-features = false, path = "../../application-crypto" }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../../std" }
 sp-api = { version = "4.0.0-dev", default-features = false, path = "../../api" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../runtime" }
 sp-inherents = { version = "4.0.0-dev", default-features = false, path = "../../inherents" }
 sp-timestamp = { version = "4.0.0-dev", default-features = false, path = "../../timestamp" }
 sp-consensus-slots = { version = "0.10.0-dev", default-features = false, path = "../slots" }
diff --git a/substrate/primitives/consensus/babe/Cargo.toml b/substrate/primitives/consensus/babe/Cargo.toml
index 1471ca05f59..b114d182c73 100644
--- a/substrate/primitives/consensus/babe/Cargo.toml
+++ b/substrate/primitives/consensus/babe/Cargo.toml
@@ -13,7 +13,7 @@ readme = "README.md"
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-application-crypto = { version = "4.0.0", default-features = false, path = "../../application-crypto" }
+sp-application-crypto = { version = "5.0.0", default-features = false, path = "../../application-crypto" }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 merlin = { version = "2.0", default-features = false }
@@ -22,10 +22,10 @@ sp-api = { version = "4.0.0-dev", default-features = false, path = "../../api" }
 sp-consensus = { version = "0.10.0-dev", optional = true, path = "../common" }
 sp-consensus-slots = { version = "0.10.0-dev", default-features = false, path = "../slots" }
 sp-consensus-vrf = { version = "0.10.0-dev", path = "../vrf", default-features = false }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../core" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../core" }
 sp-inherents = { version = "4.0.0-dev", default-features = false, path = "../../inherents" }
-sp-keystore = { version = "0.10.0", default-features = false, path = "../../keystore", optional = true }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../runtime" }
+sp-keystore = { version = "0.11.0", default-features = false, path = "../../keystore", optional = true }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../runtime" }
 sp-timestamp = { version = "4.0.0-dev", path = "../../timestamp", optional = true }
 serde = { version = "1.0.132", features = ["derive"], optional = true }
 async-trait = { version = "0.1.50", optional = true }
diff --git a/substrate/primitives/consensus/common/Cargo.toml b/substrate/primitives/consensus/common/Cargo.toml
index 93338d62cfc..2717de72d1e 100644
--- a/substrate/primitives/consensus/common/Cargo.toml
+++ b/substrate/primitives/consensus/common/Cargo.toml
@@ -20,13 +20,13 @@ codec = { package = "parity-scale-codec", version = "2.0.0", features = [
 ] }
 futures = { version = "0.3.1", features = ["thread-pool"] }
 log = "0.4.8"
-sp-core = { path = "../../core", version = "4.1.0-dev" }
+sp-core = { path = "../../core", version = "5.0.0"}
 sp-inherents = { version = "4.0.0-dev", path = "../../inherents" }
-sp-state-machine = { version = "0.10.0", path = "../../state-machine" }
+sp-state-machine = { version = "0.11.0", path = "../../state-machine" }
 futures-timer = "3.0.1"
 sp-std = { version = "4.0.0", path = "../../std" }
 sp-version = { version = "4.0.0-dev", path = "../../version" }
-sp-runtime = { version = "4.1.0-dev", path = "../../runtime" }
+sp-runtime = { version = "5.0.0", path = "../../runtime" }
 thiserror = "1.0.30"
 
 [dev-dependencies]
diff --git a/substrate/primitives/consensus/pow/Cargo.toml b/substrate/primitives/consensus/pow/Cargo.toml
index 810e9c23a65..f70af90afd6 100644
--- a/substrate/primitives/consensus/pow/Cargo.toml
+++ b/substrate/primitives/consensus/pow/Cargo.toml
@@ -15,8 +15,8 @@ targets = ["x86_64-unknown-linux-gnu"]
 [dependencies]
 sp-api = { version = "4.0.0-dev", default-features = false, path = "../../api" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../runtime" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../core" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../runtime" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../core" }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 
 [features]
diff --git a/substrate/primitives/consensus/slots/Cargo.toml b/substrate/primitives/consensus/slots/Cargo.toml
index ea2a8621898..18506980ae8 100644
--- a/substrate/primitives/consensus/slots/Cargo.toml
+++ b/substrate/primitives/consensus/slots/Cargo.toml
@@ -16,7 +16,7 @@ targets = ["x86_64-unknown-linux-gnu"]
 codec = { package = "parity-scale-codec", version = "2.2.0", default-features = false, features = ["derive", "max-encoded-len"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 serde = { version = "1.0", features = ["derive"], optional = true }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../runtime" }
 sp-arithmetic = { version = "4.0.0", default-features = false, path = "../../arithmetic" }
 
 [features]
diff --git a/substrate/primitives/consensus/vrf/Cargo.toml b/substrate/primitives/consensus/vrf/Cargo.toml
index 7504a159a3d..3277a3ff969 100644
--- a/substrate/primitives/consensus/vrf/Cargo.toml
+++ b/substrate/primitives/consensus/vrf/Cargo.toml
@@ -16,8 +16,8 @@ targets = ["x86_64-unknown-linux-gnu"]
 codec = { version = "2.0.0", package = "parity-scale-codec", default-features = false }
 schnorrkel = { version = "0.9.1", features = ["preaudit_deprecated", "u64_backend"], default-features = false }
 sp-std = { version = "4.0.0", path = "../../std", default-features = false }
-sp-core = { version = "4.1.0-dev", path = "../../core", default-features = false }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../runtime" }
+sp-core = { version = "5.0.0", path = "../../core", default-features = false }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../runtime" }
 
 [features]
 default = ["std"]
diff --git a/substrate/primitives/core/Cargo.toml b/substrate/primitives/core/Cargo.toml
index 43f2b54044c..90138ded4cb 100644
--- a/substrate/primitives/core/Cargo.toml
+++ b/substrate/primitives/core/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "sp-core"
-version = "4.1.0-dev"
+version = "5.0.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 license = "Apache-2.0"
@@ -38,8 +38,8 @@ lazy_static = { version = "1.4.0", default-features = false, optional = true }
 parking_lot = { version = "0.11.2", optional = true }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
 sp-debug-derive = { version = "4.0.0", default-features = false, path = "../debug-derive" }
-sp-storage = { version = "4.0.0", default-features = false, path = "../storage" }
-sp-externalities = { version = "0.10.0", optional = true, path = "../externalities" }
+sp-storage = { version = "5.0.0", default-features = false, path = "../storage" }
+sp-externalities = { version = "0.11.0", optional = true, path = "../externalities" }
 parity-util-mem = { version = "0.10.2", default-features = false, features = ["primitive-types"] }
 futures = { version = "0.3.1", optional = true }
 dyn-clonable = { version = "0.9.0", optional = true }
@@ -61,7 +61,7 @@ libsecp256k1 = { version = "0.7", default-features = false, features = ["hmac",
 merlin = { version = "2.0", default-features = false, optional = true }
 ss58-registry = { version = "1.11.0", default-features = false }
 sp-core-hashing = { version = "4.0.0", path = "./hashing", default-features = false, optional = true }
-sp-runtime-interface = { version = "4.1.0-dev", default-features = false, path = "../runtime-interface" }
+sp-runtime-interface = { version = "5.0.0", default-features = false, path = "../runtime-interface" }
 
 [dev-dependencies]
 sp-serializer = { version = "4.0.0-dev", path = "../serializer" }
diff --git a/substrate/primitives/externalities/Cargo.toml b/substrate/primitives/externalities/Cargo.toml
index 6c26b436796..7b7beb51e78 100644
--- a/substrate/primitives/externalities/Cargo.toml
+++ b/substrate/primitives/externalities/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "sp-externalities"
-version = "0.10.0"
+version = "0.11.0"
 license = "Apache-2.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
@@ -14,7 +14,7 @@ readme = "README.md"
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-storage = { version = "4.0.0", path = "../storage", default-features = false }
+sp-storage = { version = "5.0.0", path = "../storage", default-features = false }
 sp-std = { version = "4.0.0", path = "../std", default-features = false }
 environmental = { version = "1.1.3", default-features = false }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false }
diff --git a/substrate/primitives/finality-grandpa/Cargo.toml b/substrate/primitives/finality-grandpa/Cargo.toml
index e36c088c358..bb0b8b8509a 100644
--- a/substrate/primitives/finality-grandpa/Cargo.toml
+++ b/substrate/primitives/finality-grandpa/Cargo.toml
@@ -21,10 +21,10 @@ grandpa = { package = "finality-grandpa", version = "0.14.1", default-features =
 log = { version = "0.4.8", optional = true }
 serde = { version = "1.0.132", optional = true, features = ["derive"] }
 sp-api = { version = "4.0.0-dev", default-features = false, path = "../api" }
-sp-application-crypto = { version = "4.0.0", default-features = false, path = "../application-crypto" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../core" }
-sp-keystore = { version = "0.10.0", default-features = false, path = "../keystore", optional = true }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../runtime" }
+sp-application-crypto = { version = "5.0.0", default-features = false, path = "../application-crypto" }
+sp-core = { version = "5.0.0", default-features = false, path = "../core" }
+sp-keystore = { version = "0.11.0", default-features = false, path = "../keystore", optional = true }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
 
 [features]
diff --git a/substrate/primitives/inherents/Cargo.toml b/substrate/primitives/inherents/Cargo.toml
index 02f084b6e63..f78f4aea14e 100644
--- a/substrate/primitives/inherents/Cargo.toml
+++ b/substrate/primitives/inherents/Cargo.toml
@@ -16,8 +16,8 @@ targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../core" }
-sp-runtime = { version = "4.1.0-dev", path = "../runtime", optional = true }
+sp-core = { version = "5.0.0", default-features = false, path = "../core" }
+sp-runtime = { version = "5.0.0", path = "../runtime", optional = true }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 thiserror = { version = "1.0.30", optional = true }
 impl-trait-for-tuples = "0.2.0"
diff --git a/substrate/primitives/io/Cargo.toml b/substrate/primitives/io/Cargo.toml
index ee3c9e8945e..207a1a23e81 100644
--- a/substrate/primitives/io/Cargo.toml
+++ b/substrate/primitives/io/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "sp-io"
-version = "4.0.0"
+version = "5.0.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 license = "Apache-2.0"
@@ -17,15 +17,15 @@ targets = ["x86_64-unknown-linux-gnu"]
 [dependencies]
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false }
 hash-db = { version = "0.15.2", default-features = false }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../core" }
-sp-keystore = { version = "0.10.0", default-features = false, optional = true, path = "../keystore" }
+sp-core = { version = "5.0.0", default-features = false, path = "../core" }
+sp-keystore = { version = "0.11.0", default-features = false, optional = true, path = "../keystore" }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
 libsecp256k1 = { version = "0.7", optional = true }
-sp-state-machine = { version = "0.10.0", optional = true, path = "../state-machine" }
-sp-wasm-interface = { version = "4.1.0-dev", path = "../wasm-interface", default-features = false }
-sp-runtime-interface = { version = "4.1.0-dev", default-features = false, path = "../runtime-interface" }
-sp-trie = { version = "4.0.0", optional = true, path = "../trie" }
-sp-externalities = { version = "0.10.0", optional = true, path = "../externalities" }
+sp-state-machine = { version = "0.11.0", optional = true, path = "../state-machine" }
+sp-wasm-interface = { version = "5.0.0", path = "../wasm-interface", default-features = false }
+sp-runtime-interface = { version = "5.0.0", default-features = false, path = "../runtime-interface" }
+sp-trie = { version = "5.0.0", optional = true, path = "../trie" }
+sp-externalities = { version = "0.11.0", optional = true, path = "../externalities" }
 sp-tracing = { version = "4.0.0", default-features = false, path = "../tracing" }
 log = { version = "0.4.8", optional = true }
 futures = { version = "0.3.1", features = ["thread-pool"], optional = true }
diff --git a/substrate/primitives/keyring/Cargo.toml b/substrate/primitives/keyring/Cargo.toml
index a31dcc51d0f..2f8e935b245 100644
--- a/substrate/primitives/keyring/Cargo.toml
+++ b/substrate/primitives/keyring/Cargo.toml
@@ -15,7 +15,7 @@ targets = ["x86_64-unknown-linux-gnu"]
 
 
 [dependencies]
-sp-core = { version = "4.1.0-dev", path = "../core" }
-sp-runtime = { version = "4.1.0-dev", path = "../runtime" }
+sp-core = { version = "5.0.0", path = "../core" }
+sp-runtime = { version = "5.0.0", path = "../runtime" }
 lazy_static = "1.4.0"
 strum = { version = "0.23.0", features = ["derive"] }
diff --git a/substrate/primitives/keystore/Cargo.toml b/substrate/primitives/keystore/Cargo.toml
index 28802cbec35..26748d3227d 100644
--- a/substrate/primitives/keystore/Cargo.toml
+++ b/substrate/primitives/keystore/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "sp-keystore"
-version = "0.10.0"
+version = "0.11.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 license = "Apache-2.0"
@@ -22,8 +22,8 @@ thiserror = "1.0"
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 schnorrkel = { version = "0.9.1", features = ["preaudit_deprecated", "u64_backend"], default-features = false }
 merlin = { version = "2.0", default-features = false }
-sp-core = { version = "4.1.0-dev", path = "../core" }
-sp-externalities = { version = "0.10.0", path = "../externalities", default-features = false }
+sp-core = { version = "5.0.0", path = "../core" }
+sp-externalities = { version = "0.11.0", path = "../externalities", default-features = false }
 
 [dev-dependencies]
 rand = "0.7.2"
diff --git a/substrate/primitives/npos-elections/Cargo.toml b/substrate/primitives/npos-elections/Cargo.toml
index 062f786aaef..f392895a945 100644
--- a/substrate/primitives/npos-elections/Cargo.toml
+++ b/substrate/primitives/npos-elections/Cargo.toml
@@ -19,8 +19,8 @@ serde = { version = "1.0.132", optional = true, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
 sp-npos-elections-solution-type = { version = "4.0.0-dev", path = "./solution-type" }
 sp-arithmetic = { version = "4.0.0", default-features = false, path = "../arithmetic" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../core" }
-sp-runtime = { version = "4.1.0-dev", path = "../runtime", default-features = false }
+sp-core = { version = "5.0.0", default-features = false, path = "../core" }
+sp-runtime = { version = "5.0.0", path = "../runtime", default-features = false }
 
 [dev-dependencies]
 substrate-test-utils = { version = "4.0.0-dev", path = "../../test-utils" }
diff --git a/substrate/primitives/npos-elections/fuzzer/Cargo.toml b/substrate/primitives/npos-elections/fuzzer/Cargo.toml
index 3b6103552e2..335195e9bf5 100644
--- a/substrate/primitives/npos-elections/fuzzer/Cargo.toml
+++ b/substrate/primitives/npos-elections/fuzzer/Cargo.toml
@@ -21,7 +21,7 @@ rand = { version = "0.8", features = ["std", "small_rng"] }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-npos-elections = { version = "4.0.0-dev", path = ".." }
-sp-runtime = { version = "4.1.0-dev", path = "../../runtime" }
+sp-runtime = { version = "5.0.0", path = "../../runtime" }
 
 [[bin]]
 name = "reduce"
diff --git a/substrate/primitives/offchain/Cargo.toml b/substrate/primitives/offchain/Cargo.toml
index 7e0ce31d5d0..a96cd852bf2 100644
--- a/substrate/primitives/offchain/Cargo.toml
+++ b/substrate/primitives/offchain/Cargo.toml
@@ -13,9 +13,9 @@ readme = "README.md"
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../core" }
+sp-core = { version = "5.0.0", default-features = false, path = "../core" }
 sp-api = { version = "4.0.0-dev", default-features = false, path = "../api" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../runtime" }
 
 [features]
 default = ["std"]
diff --git a/substrate/primitives/rpc/Cargo.toml b/substrate/primitives/rpc/Cargo.toml
index 52fe09b2c78..137be2c6eee 100644
--- a/substrate/primitives/rpc/Cargo.toml
+++ b/substrate/primitives/rpc/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "sp-rpc"
-version = "4.0.0-dev"
+version = "5.0.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 license = "Apache-2.0"
@@ -14,7 +14,7 @@ targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
 serde = { version = "1.0.132", features = ["derive"] }
-sp-core = { version = "4.1.0-dev", path = "../core" }
+sp-core = { version = "5.0.0", path = "../core" }
 rustc-hash = "1.1.0"
 
 [dev-dependencies]
diff --git a/substrate/primitives/runtime-interface/Cargo.toml b/substrate/primitives/runtime-interface/Cargo.toml
index 137780c3c91..89805a9db36 100644
--- a/substrate/primitives/runtime-interface/Cargo.toml
+++ b/substrate/primitives/runtime-interface/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "sp-runtime-interface"
-version = "4.1.0-dev"
+version = "5.0.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 license = "Apache-2.0"
@@ -14,22 +14,22 @@ readme = "README.md"
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-wasm-interface = { version = "4.1.0-dev", path = "../wasm-interface", default-features = false }
+sp-wasm-interface = { version = "5.0.0", path = "../wasm-interface", default-features = false }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
 sp-tracing = { version = "4.0.0", default-features = false, path = "../tracing" }
 sp-runtime-interface-proc-macro = { version = "4.0.0", path = "proc-macro" }
-sp-externalities = { version = "0.10.0", optional = true, path = "../externalities" }
+sp-externalities = { version = "0.11.0", optional = true, path = "../externalities" }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false }
 static_assertions = "1.0.0"
 primitive-types = { version = "0.10.1", default-features = false }
-sp-storage = { version = "4.0.0", default-features = false, path = "../storage" }
+sp-storage = { version = "5.0.0", default-features = false, path = "../storage" }
 impl-trait-for-tuples = "0.2.1"
 
 [dev-dependencies]
 sp-runtime-interface-test-wasm = { version = "2.0.0", path = "test-wasm" }
-sp-state-machine = { version = "0.10.0", path = "../state-machine" }
-sp-core = { version = "4.1.0-dev", path = "../core" }
-sp-io = { version = "4.0.0-dev", path = "../io" }
+sp-state-machine = { version = "0.11.0", path = "../state-machine" }
+sp-core = { version = "5.0.0", path = "../core" }
+sp-io = { version = "5.0.0", path = "../io" }
 rustversion = "1.0.6"
 trybuild = "1.0.53"
 
diff --git a/substrate/primitives/runtime-interface/test-wasm-deprecated/Cargo.toml b/substrate/primitives/runtime-interface/test-wasm-deprecated/Cargo.toml
index 032de1d215f..18046626f65 100644
--- a/substrate/primitives/runtime-interface/test-wasm-deprecated/Cargo.toml
+++ b/substrate/primitives/runtime-interface/test-wasm-deprecated/Cargo.toml
@@ -13,10 +13,10 @@ publish = false
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-runtime-interface = { version = "4.1.0-dev", default-features = false, path = "../" }
+sp-runtime-interface = { version = "5.0.0", default-features = false, path = "../" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../std" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../io" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../io" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../core" }
 
 [build-dependencies]
 substrate-wasm-builder = { version = "5.0.0-dev", path = "../../../utils/wasm-builder" }
diff --git a/substrate/primitives/runtime-interface/test-wasm/Cargo.toml b/substrate/primitives/runtime-interface/test-wasm/Cargo.toml
index 80ad44569e9..9b6bdf39eb4 100644
--- a/substrate/primitives/runtime-interface/test-wasm/Cargo.toml
+++ b/substrate/primitives/runtime-interface/test-wasm/Cargo.toml
@@ -13,10 +13,10 @@ publish = false
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-runtime-interface = { version = "4.1.0-dev", default-features = false, path = "../" }
+sp-runtime-interface = { version = "5.0.0", default-features = false, path = "../" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../std" }
-sp-io = { version = "4.0.0-dev", default-features = false, path = "../../io" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../core" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../io" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../core" }
 
 [build-dependencies]
 substrate-wasm-builder = { version = "5.0.0-dev", path = "../../../utils/wasm-builder" }
diff --git a/substrate/primitives/runtime-interface/test/Cargo.toml b/substrate/primitives/runtime-interface/test/Cargo.toml
index 82c6a21b995..107a8fcc7f2 100644
--- a/substrate/primitives/runtime-interface/test/Cargo.toml
+++ b/substrate/primitives/runtime-interface/test/Cargo.toml
@@ -12,13 +12,13 @@ repository = "https://github.com/paritytech/substrate/"
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-runtime-interface = { version = "4.1.0-dev", path = "../" }
+sp-runtime-interface = { version = "5.0.0", path = "../" }
 sc-executor = { version = "0.10.0-dev", path = "../../../client/executor" }
 sc-executor-common = { version = "0.10.0-dev", path = "../../../client/executor/common" }
 sp-runtime-interface-test-wasm = { version = "2.0.0", path = "../test-wasm" }
 sp-runtime-interface-test-wasm-deprecated = { version = "2.0.0", path = "../test-wasm-deprecated" }
-sp-state-machine = { version = "0.10.0", path = "../../state-machine" }
-sp-runtime = { version = "4.1.0-dev", path = "../../runtime" }
-sp-io = { version = "4.0.0", path = "../../io" }
+sp-state-machine = { version = "0.11.0", path = "../../state-machine" }
+sp-runtime = { version = "5.0.0", path = "../../runtime" }
+sp-io = { version = "5.0.0", path = "../../io" }
 tracing = "0.1.29"
 tracing-core = "0.1.17"
diff --git a/substrate/primitives/runtime/Cargo.toml b/substrate/primitives/runtime/Cargo.toml
index e6bb5a1c842..4f793c8faa9 100644
--- a/substrate/primitives/runtime/Cargo.toml
+++ b/substrate/primitives/runtime/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "sp-runtime"
-version = "4.1.0-dev"
+version = "5.0.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 license = "Apache-2.0"
@@ -18,11 +18,11 @@ targets = ["x86_64-unknown-linux-gnu"]
 serde = { version = "1.0.132", optional = true, features = ["derive"] }
 codec = { package = "parity-scale-codec", version = "2.2.0", default-features = false, features = ["derive", "max-encoded-len"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../core" }
-sp-application-crypto = { version = "4.0.0", default-features = false, path = "../application-crypto" }
+sp-core = { version = "5.0.0", default-features = false, path = "../core" }
+sp-application-crypto = { version = "5.0.0", default-features = false, path = "../application-crypto" }
 sp-arithmetic = { version = "4.0.0", default-features = false, path = "../arithmetic" }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
-sp-io = { version = "4.0.0", default-features = false, path = "../io" }
+sp-io = { version = "5.0.0", default-features = false, path = "../io" }
 log = { version = "0.4.14", default-features = false }
 paste = "1.0"
 rand = { version = "0.7.2", optional = true }
@@ -34,7 +34,7 @@ either = { version = "1.5", default-features = false }
 [dev-dependencies]
 serde_json = "1.0.74"
 rand = "0.7.2"
-sp-state-machine = { version = "0.10.0", path = "../state-machine" }
+sp-state-machine = { version = "0.11.0", path = "../state-machine" }
 sp-api = { version = "4.0.0-dev", path = "../api" }
 substrate-test-runtime-client = { version = "2.0.0", path = "../../test-utils/runtime/client" }
 sp-tracing = { version = "4.0.0", path = "../../primitives/tracing" }
diff --git a/substrate/primitives/sandbox/Cargo.toml b/substrate/primitives/sandbox/Cargo.toml
index 59941c9648d..a7278680733 100644
--- a/substrate/primitives/sandbox/Cargo.toml
+++ b/substrate/primitives/sandbox/Cargo.toml
@@ -20,10 +20,10 @@ wasmi = "0.9.0"
 
 [dependencies]
 wasmi = { version = "0.9.0", optional = true }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../core" }
+sp-core = { version = "5.0.0", default-features = false, path = "../core" }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
-sp-io = { version = "4.0.0", default-features = false, path = "../io" }
-sp-wasm-interface = { version = "4.1.0-dev", default-features = false, path = "../wasm-interface" }
+sp-io = { version = "5.0.0", default-features = false, path = "../io" }
+sp-wasm-interface = { version = "5.0.0", default-features = false, path = "../wasm-interface" }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false }
 log = { version = "0.4", default-features = false }
 
diff --git a/substrate/primitives/session/Cargo.toml b/substrate/primitives/session/Cargo.toml
index 293f3642b7f..4138ecb519d 100644
--- a/substrate/primitives/session/Cargo.toml
+++ b/substrate/primitives/session/Cargo.toml
@@ -16,10 +16,10 @@ targets = ["x86_64-unknown-linux-gnu"]
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-api = { version = "4.0.0-dev", default-features = false, path = "../api" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../core" }
+sp-core = { version = "5.0.0", default-features = false, path = "../core" }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
 sp-staking = { version = "4.0.0-dev", default-features = false, path = "../staking" }
-sp-runtime = { version = "4.1.0-dev", optional = true, path = "../runtime" }
+sp-runtime = { version = "5.0.0", optional = true, path = "../runtime" }
 
 [features]
 default = [ "std" ]
diff --git a/substrate/primitives/staking/Cargo.toml b/substrate/primitives/staking/Cargo.toml
index 6ae972f1814..54e556dfae1 100644
--- a/substrate/primitives/staking/Cargo.toml
+++ b/substrate/primitives/staking/Cargo.toml
@@ -15,7 +15,7 @@ targets = ["x86_64-unknown-linux-gnu"]
 [dependencies]
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
 
 [features]
diff --git a/substrate/primitives/state-machine/Cargo.toml b/substrate/primitives/state-machine/Cargo.toml
index c885f99fdb8..15720688c05 100644
--- a/substrate/primitives/state-machine/Cargo.toml
+++ b/substrate/primitives/state-machine/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "sp-state-machine"
-version = "0.10.0"
+version = "0.11.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 description = "Substrate State Machine"
 edition = "2021"
@@ -20,20 +20,20 @@ parking_lot = { version = "0.11.2", optional = true }
 hash-db = { version = "0.15.2", default-features = false }
 trie-db = { version = "0.23.0", default-features = false }
 trie-root = { version = "0.17.0", default-features = false }
-sp-trie = { version = "4.0.0", path = "../trie", default-features = false }
-sp-core = { version = "4.1.0-dev", path = "../core", default-features = false }
+sp-trie = { version = "5.0.0", path = "../trie", default-features = false }
+sp-core = { version = "5.0.0", path = "../core", default-features = false }
 sp-panic-handler = { version = "4.0.0", path = "../panic-handler", optional = true }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false }
 num-traits = { version = "0.2.8", default-features = false }
 rand = { version = "0.7.2", optional = true }
-sp-externalities = { version = "0.10.0", path = "../externalities", default-features = false }
+sp-externalities = { version = "0.11.0", path = "../externalities", default-features = false }
 smallvec = "1.7.0"
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
 tracing = { version = "0.1.29", optional = true }
 
 [dev-dependencies]
 hex-literal = "0.3.4"
-sp-runtime = { version = "4.1.0-dev", path = "../runtime" }
+sp-runtime = { version = "5.0.0", path = "../runtime" }
 pretty_assertions = "1.0.0"
 rand = "0.7.2"
 
diff --git a/substrate/primitives/storage/Cargo.toml b/substrate/primitives/storage/Cargo.toml
index 81e4140bbd3..d3c22ce7065 100644
--- a/substrate/primitives/storage/Cargo.toml
+++ b/substrate/primitives/storage/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "sp-storage"
-version = "4.0.0"
+version = "5.0.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 description = "Storage related primitives"
diff --git a/substrate/primitives/tasks/Cargo.toml b/substrate/primitives/tasks/Cargo.toml
index 6ac6c6aa98b..00943e86572 100644
--- a/substrate/primitives/tasks/Cargo.toml
+++ b/substrate/primitives/tasks/Cargo.toml
@@ -15,10 +15,10 @@ targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
 log = { version = "0.4.8", optional = true }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../core" }
-sp-externalities = { version = "0.10.0", optional = true, path = "../externalities" }
-sp-io = { version = "4.0.0", default-features = false, path = "../io" }
-sp-runtime-interface = { version = "4.1.0-dev", default-features = false, path = "../runtime-interface" }
+sp-core = { version = "5.0.0", default-features = false, path = "../core" }
+sp-externalities = { version = "0.11.0", optional = true, path = "../externalities" }
+sp-io = { version = "5.0.0", default-features = false, path = "../io" }
+sp-runtime-interface = { version = "5.0.0", default-features = false, path = "../runtime-interface" }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
 
 [dev-dependencies]
diff --git a/substrate/primitives/test-primitives/Cargo.toml b/substrate/primitives/test-primitives/Cargo.toml
index ab2ef0d54ca..41fd6173cd8 100644
--- a/substrate/primitives/test-primitives/Cargo.toml
+++ b/substrate/primitives/test-primitives/Cargo.toml
@@ -12,11 +12,11 @@ publish = false
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-application-crypto = { version = "4.0.0", default-features = false, path = "../application-crypto" }
+sp-application-crypto = { version = "5.0.0", default-features = false, path = "../application-crypto" }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../core" }
+sp-core = { version = "5.0.0", default-features = false, path = "../core" }
 serde = { version = "1.0.132", optional = true, features = ["derive"] }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../runtime" }
 parity-util-mem = { version = "0.10.2", default-features = false, features = ["primitive-types"] }
 
 [features]
diff --git a/substrate/primitives/timestamp/Cargo.toml b/substrate/primitives/timestamp/Cargo.toml
index e42ca738cd5..f7ac2e663e3 100644
--- a/substrate/primitives/timestamp/Cargo.toml
+++ b/substrate/primitives/timestamp/Cargo.toml
@@ -15,7 +15,7 @@ targets = ["x86_64-unknown-linux-gnu"]
 [dependencies]
 sp-api = { version = "4.0.0-dev", default-features = false, path = "../api" }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../runtime" }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 sp-inherents = { version = "4.0.0-dev", default-features = false, path = "../inherents" }
 thiserror = { version = "1.0.30", optional = true }
diff --git a/substrate/primitives/transaction-pool/Cargo.toml b/substrate/primitives/transaction-pool/Cargo.toml
index fab5f90ffff..c8f70bdce9d 100644
--- a/substrate/primitives/transaction-pool/Cargo.toml
+++ b/substrate/primitives/transaction-pool/Cargo.toml
@@ -15,7 +15,7 @@ targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
 sp-api = { version = "4.0.0-dev", default-features = false, path = "../api" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../runtime" }
 
 [features]
 default = [ "std" ]
diff --git a/substrate/primitives/transaction-storage-proof/Cargo.toml b/substrate/primitives/transaction-storage-proof/Cargo.toml
index 87f7f81cd58..9e2898fe267 100644
--- a/substrate/primitives/transaction-storage-proof/Cargo.toml
+++ b/substrate/primitives/transaction-storage-proof/Cargo.toml
@@ -14,10 +14,10 @@ targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
 sp-inherents = { version = "4.0.0-dev", default-features = false, path = "../inherents" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../runtime" }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
-sp-trie = { version = "4.0.0", optional = true, path = "../trie" }
-sp-core = { version = "4.1.0-dev", path = "../core", optional = true }
+sp-trie = { version = "5.0.0", optional = true, path = "../trie" }
+sp-core = { version = "5.0.0", path = "../core", optional = true }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 log = { version = "0.4.8", optional = true }
diff --git a/substrate/primitives/trie/Cargo.toml b/substrate/primitives/trie/Cargo.toml
index 4564fa86ced..e79f2ffb7f8 100644
--- a/substrate/primitives/trie/Cargo.toml
+++ b/substrate/primitives/trie/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "sp-trie"
-version = "4.0.0"
+version = "5.0.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 description = "Patricia trie stuff using a parity-scale-codec node format"
 repository = "https://github.com/paritytech/substrate/"
@@ -25,14 +25,14 @@ hash-db = { version = "0.15.2", default-features = false }
 trie-db = { version = "0.23.0", default-features = false }
 trie-root = { version = "0.17.0", default-features = false }
 memory-db = { version = "0.28.0", default-features = false }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../core" }
+sp-core = { version = "5.0.0", default-features = false, path = "../core" }
 
 [dev-dependencies]
 trie-bench = "0.29.0"
 trie-standardmap = "0.15.2"
 criterion = "0.3.3"
 hex-literal = "0.3.4"
-sp-runtime = { version = "4.1.0-dev", path = "../runtime" }
+sp-runtime = { version = "5.0.0", path = "../runtime" }
 
 [features]
 default = ["std"]
diff --git a/substrate/primitives/version/Cargo.toml b/substrate/primitives/version/Cargo.toml
index 1bb39eca136..48091ba709c 100644
--- a/substrate/primitives/version/Cargo.toml
+++ b/substrate/primitives/version/Cargo.toml
@@ -19,7 +19,7 @@ serde = { version = "1.0.132", optional = true, features = ["derive"] }
 codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
 scale-info = { version = "1.0", default-features = false, features = ["derive"] }
 sp-std = { version = "4.0.0", default-features = false, path = "../std" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../runtime" }
 sp-version-proc-macro = { version = "4.0.0-dev", default-features = false, path = "proc-macro" }
 parity-wasm = { version = "0.42.2", optional = true }
 sp-core-hashing-proc-macro = { version = "4.0.0-dev", path = "../core/hashing/proc-macro" }
diff --git a/substrate/primitives/wasm-interface/Cargo.toml b/substrate/primitives/wasm-interface/Cargo.toml
index 200c686243e..bb82629ba01 100644
--- a/substrate/primitives/wasm-interface/Cargo.toml
+++ b/substrate/primitives/wasm-interface/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "sp-wasm-interface"
-version = "4.1.0-dev"
+version = "5.0.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 license = "Apache-2.0"
diff --git a/substrate/test-utils/client/Cargo.toml b/substrate/test-utils/client/Cargo.toml
index 902a14b1b3b..5f687b24896 100644
--- a/substrate/test-utils/client/Cargo.toml
+++ b/substrate/test-utils/client/Cargo.toml
@@ -29,9 +29,9 @@ sc-service = { version = "0.10.0-dev", default-features = false, features = [
 ], path = "../../client/service" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../primitives/blockchain" }
 sp-consensus = { version = "0.10.0-dev", path = "../../primitives/consensus/common" }
-sp-core = { version = "4.1.0-dev", path = "../../primitives/core" }
-sp-keystore = { version = "0.10.0", path = "../../primitives/keystore" }
+sp-core = { version = "5.0.0", path = "../../primitives/core" }
+sp-keystore = { version = "0.11.0", path = "../../primitives/keystore" }
 sp-keyring = { version = "4.1.0-dev", path = "../../primitives/keyring" }
-sp-runtime = { version = "4.1.0-dev", path = "../../primitives/runtime" }
-sp-state-machine = { version = "0.10.0", path = "../../primitives/state-machine" }
+sp-runtime = { version = "5.0.0", path = "../../primitives/runtime" }
+sp-state-machine = { version = "0.11.0", path = "../../primitives/state-machine" }
 async-trait = "0.1.50"
diff --git a/substrate/test-utils/runtime/Cargo.toml b/substrate/test-utils/runtime/Cargo.toml
index e88f5713660..f1b06d3b3ec 100644
--- a/substrate/test-utils/runtime/Cargo.toml
+++ b/substrate/test-utils/runtime/Cargo.toml
@@ -13,7 +13,7 @@ publish = false
 targets = ["x86_64-unknown-linux-gnu"]
 
 [dependencies]
-sp-application-crypto = { version = "4.0.0", default-features = false, path = "../../primitives/application-crypto" }
+sp-application-crypto = { version = "5.0.0", default-features = false, path = "../../primitives/application-crypto" }
 sp-consensus-aura = { version = "0.10.0-dev", default-features = false, path = "../../primitives/consensus/aura" }
 sp-consensus-babe = { version = "0.10.0-dev", default-features = false, path = "../../primitives/consensus/babe" }
 sp-block-builder = { version = "4.0.0-dev", default-features = false, path = "../../primitives/block-builder" }
@@ -23,27 +23,27 @@ sp-inherents = { version = "4.0.0-dev", default-features = false, path = "../../
 sp-keyring = { version = "4.1.0-dev", optional = true, path = "../../primitives/keyring" }
 memory-db = { version = "0.27.0", default-features = false }
 sp-offchain = { version = "4.0.0-dev", default-features = false, path = "../../primitives/offchain" }
-sp-core = { version = "4.1.0-dev", default-features = false, path = "../../primitives/core" }
+sp-core = { version = "5.0.0", default-features = false, path = "../../primitives/core" }
 sp-std = { version = "4.0.0", default-features = false, path = "../../primitives/std" }
-sp-runtime-interface = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime-interface" }
-sp-io = { version = "4.0.0", default-features = false, path = "../../primitives/io" }
+sp-runtime-interface = { version = "5.0.0", default-features = false, path = "../../primitives/runtime-interface" }
+sp-io = { version = "5.0.0", default-features = false, path = "../../primitives/io" }
 frame-support = { version = "4.0.0-dev", default-features = false, path = "../../frame/support" }
 sp-version = { version = "4.0.0-dev", default-features = false, path = "../../primitives/version" }
 sp-session = { version = "4.0.0-dev", default-features = false, path = "../../primitives/session" }
 sp-api = { version = "4.0.0-dev", default-features = false, path = "../../primitives/api" }
-sp-runtime = { version = "4.1.0-dev", default-features = false, path = "../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", default-features = false, path = "../../primitives/runtime" }
 pallet-babe = { version = "4.0.0-dev", default-features = false, path = "../../frame/babe" }
 frame-system = { version = "4.0.0-dev", default-features = false, path = "../../frame/system" }
 frame-system-rpc-runtime-api = { version = "4.0.0-dev", default-features = false, path = "../../frame/system/rpc/runtime-api" }
 pallet-timestamp = { version = "4.0.0-dev", default-features = false, path = "../../frame/timestamp" }
 sp-finality-grandpa = { version = "4.0.0-dev", default-features = false, path = "../../primitives/finality-grandpa" }
-sp-trie = { version = "4.0.0", default-features = false, path = "../../primitives/trie" }
+sp-trie = { version = "5.0.0", default-features = false, path = "../../primitives/trie" }
 sp-transaction-pool = { version = "4.0.0-dev", default-features = false, path = "../../primitives/transaction-pool" }
 trie-db = { version = "0.23.0", default-features = false }
 parity-util-mem = { version = "0.10.2", default-features = false, features = ["primitive-types"] }
 sc-service = { version = "0.10.0-dev", default-features = false, optional = true, features = ["test-helpers"], path = "../../client/service" }
-sp-state-machine = { version = "0.10.0", default-features = false, path = "../../primitives/state-machine" }
-sp-externalities = { version = "0.10.0", default-features = false, path = "../../primitives/externalities" }
+sp-state-machine = { version = "0.11.0", default-features = false, path = "../../primitives/state-machine" }
+sp-externalities = { version = "0.11.0", default-features = false, path = "../../primitives/externalities" }
 
 # 3rd party
 cfg-if = "1.0"
diff --git a/substrate/test-utils/runtime/client/Cargo.toml b/substrate/test-utils/runtime/client/Cargo.toml
index ba0f01cfced..fd260453ca1 100644
--- a/substrate/test-utils/runtime/client/Cargo.toml
+++ b/substrate/test-utils/runtime/client/Cargo.toml
@@ -16,9 +16,9 @@ sp-consensus = { version = "0.10.0-dev", path = "../../../primitives/consensus/c
 sc-consensus = { version = "0.10.0-dev", path = "../../../client/consensus/common" }
 sc-block-builder = { version = "0.10.0-dev", path = "../../../client/block-builder" }
 substrate-test-client = { version = "2.0.0", path = "../../client" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
 substrate-test-runtime = { version = "2.0.0", path = "../../runtime" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 sp-api = { version = "4.0.0-dev", path = "../../../primitives/api" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../primitives/blockchain" }
 codec = { package = "parity-scale-codec", version = "2.0.0" }
diff --git a/substrate/test-utils/runtime/transaction-pool/Cargo.toml b/substrate/test-utils/runtime/transaction-pool/Cargo.toml
index 2a94f248458..ef2ebd64fb2 100644
--- a/substrate/test-utils/runtime/transaction-pool/Cargo.toml
+++ b/substrate/test-utils/runtime/transaction-pool/Cargo.toml
@@ -16,7 +16,7 @@ substrate-test-runtime-client = { version = "2.0.0", path = "../client" }
 parking_lot = "0.11.2"
 codec = { package = "parity-scale-codec", version = "2.0.0" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../primitives/blockchain" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 sc-transaction-pool = { version = "4.0.0-dev", path = "../../../client/transaction-pool" }
 sc-transaction-pool-api = { version = "4.0.0-dev", path = "../../../client/transaction-pool/api" }
 futures = "0.3.16"
diff --git a/substrate/utils/frame/benchmarking-cli/Cargo.toml b/substrate/utils/frame/benchmarking-cli/Cargo.toml
index a7e5b76ad97..971fb31a3f8 100644
--- a/substrate/utils/frame/benchmarking-cli/Cargo.toml
+++ b/substrate/utils/frame/benchmarking-cli/Cargo.toml
@@ -15,15 +15,15 @@ targets = ["x86_64-unknown-linux-gnu"]
 [dependencies]
 frame-benchmarking = { version = "4.0.0-dev", path = "../../../frame/benchmarking" }
 frame-support = { version = "4.0.0-dev", path = "../../../frame/support" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
 sc-service = { version = "0.10.0-dev", default-features = false, path = "../../../client/service" }
 sc-cli = { version = "0.10.0-dev", path = "../../../client/cli" }
 sc-client-db = { version = "0.10.0-dev", path = "../../../client/db" }
 sc-executor = { version = "0.10.0-dev", path = "../../../client/executor" }
-sp-externalities = { version = "0.10.0", path = "../../../primitives/externalities" }
-sp-keystore = { version = "0.10.0", path = "../../../primitives/keystore" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
-sp-state-machine = { version = "0.10.0", path = "../../../primitives/state-machine" }
+sp-externalities = { version = "0.11.0", path = "../../../primitives/externalities" }
+sp-keystore = { version = "0.11.0", path = "../../../primitives/keystore" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
+sp-state-machine = { version = "0.11.0", path = "../../../primitives/state-machine" }
 codec = { version = "2.0.0", package = "parity-scale-codec" }
 clap = { version = "3.0", features = ["derive"] }
 chrono = "0.4"
diff --git a/substrate/utils/frame/frame-utilities-cli/Cargo.toml b/substrate/utils/frame/frame-utilities-cli/Cargo.toml
index f330b205ea2..50a00db1d4d 100644
--- a/substrate/utils/frame/frame-utilities-cli/Cargo.toml
+++ b/substrate/utils/frame/frame-utilities-cli/Cargo.toml
@@ -13,9 +13,9 @@ readme = "README.md"
 [dependencies]
 clap = { version = "3.0", features = ["derive"] }
 
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
 sc-cli = { version = "0.10.0-dev", path = "../../../client/cli" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 frame-system = { version = "4.0.0-dev", path = "../../../frame/system" }
 frame-support = { version = "4.0.0-dev", path = "../../../frame/support" }
 
diff --git a/substrate/utils/frame/generate-bags/Cargo.toml b/substrate/utils/frame/generate-bags/Cargo.toml
index 55670c96f79..5bda705a581 100644
--- a/substrate/utils/frame/generate-bags/Cargo.toml
+++ b/substrate/utils/frame/generate-bags/Cargo.toml
@@ -17,7 +17,7 @@ frame-system = { version = "4.0.0-dev", path = "../../../frame/system" }
 pallet-staking = { version = "4.0.0-dev", path = "../../../frame/staking" }
 
 # primitives
-sp-io = { version = "4.0.0", path = "../../../primitives/io" }
+sp-io = { version = "5.0.0", path = "../../../primitives/io" }
 
 # third party
 chrono = { version = "0.4.19" }
diff --git a/substrate/utils/frame/remote-externalities/Cargo.toml b/substrate/utils/frame/remote-externalities/Cargo.toml
index 9e0b17a7b58..c1d6f1b1c5f 100644
--- a/substrate/utils/frame/remote-externalities/Cargo.toml
+++ b/substrate/utils/frame/remote-externalities/Cargo.toml
@@ -22,9 +22,9 @@ codec = { package = "parity-scale-codec", version = "2.0.0" }
 serde_json = "1.0"
 serde = "1.0.132"
 
-sp-io = { version = "4.0.0-dev", path = "../../../primitives/io" }
-sp-core = { version = "4.1.0-dev", path = "../../../primitives/core" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../primitives/runtime" }
+sp-io = { version = "5.0.0", path = "../../../primitives/io" }
+sp-core = { version = "5.0.0", path = "../../../primitives/core" }
+sp-runtime = { version = "5.0.0", path = "../../../primitives/runtime" }
 sp-version = { version = "4.0.0-dev", path = "../../../primitives/version" }
 
 [dev-dependencies]
diff --git a/substrate/utils/frame/rpc/support/Cargo.toml b/substrate/utils/frame/rpc/support/Cargo.toml
index 6ecaabd7205..fcb5a436738 100644
--- a/substrate/utils/frame/rpc/support/Cargo.toml
+++ b/substrate/utils/frame/rpc/support/Cargo.toml
@@ -20,7 +20,7 @@ jsonrpc-client-transports = { version = "18.0.0", features = ["http"] }
 codec = { package = "parity-scale-codec", version = "2.0.0" }
 serde = "1"
 frame-support = { version = "4.0.0-dev", path = "../../../../frame/support" }
-sp-storage = { version = "4.0.0", path = "../../../../primitives/storage" }
+sp-storage = { version = "5.0.0", path = "../../../../primitives/storage" }
 sc-rpc-api = { version = "0.10.0-dev", path = "../../../../client/rpc-api" }
 
 [dev-dependencies]
diff --git a/substrate/utils/frame/rpc/system/Cargo.toml b/substrate/utils/frame/rpc/system/Cargo.toml
index cb801c6cbf2..8ce72416dac 100644
--- a/substrate/utils/frame/rpc/system/Cargo.toml
+++ b/substrate/utils/frame/rpc/system/Cargo.toml
@@ -20,10 +20,10 @@ jsonrpc-core = "18.0.0"
 jsonrpc-core-client = "18.0.0"
 jsonrpc-derive = "18.0.0"
 log = "0.4.8"
-sp-runtime = { version = "4.1.0-dev", path = "../../../../primitives/runtime" }
+sp-runtime = { version = "5.0.0", path = "../../../../primitives/runtime" }
 sp-api = { version = "4.0.0-dev", path = "../../../../primitives/api" }
 frame-system-rpc-runtime-api = { version = "4.0.0-dev", path = "../../../../frame/system/rpc/runtime-api" }
-sp-core = { version = "4.1.0-dev", path = "../../../../primitives/core" }
+sp-core = { version = "5.0.0", path = "../../../../primitives/core" }
 sp-blockchain = { version = "4.0.0-dev", path = "../../../../primitives/blockchain" }
 sc-transaction-pool-api = { version = "4.0.0-dev", path = "../../../../client/transaction-pool/api" }
 sp-block-builder = { version = "4.0.0-dev", path = "../../../../primitives/block-builder" }
diff --git a/substrate/utils/frame/try-runtime/cli/Cargo.toml b/substrate/utils/frame/try-runtime/cli/Cargo.toml
index 812310ff17d..541706257ba 100644
--- a/substrate/utils/frame/try-runtime/cli/Cargo.toml
+++ b/substrate/utils/frame/try-runtime/cli/Cargo.toml
@@ -23,12 +23,12 @@ sc-service = { version = "0.10.0-dev", default-features = false, path = "../../.
 sc-cli = { version = "0.10.0-dev", path = "../../../../client/cli" }
 sc-executor = { version = "0.10.0-dev", path = "../../../../client/executor" }
 sc-chain-spec = { version = "4.0.0-dev", path = "../../../../client/chain-spec" }
-sp-state-machine = { version = "0.10.0", path = "../../../../primitives/state-machine" }
-sp-runtime = { version = "4.1.0-dev", path = "../../../../primitives/runtime" }
-sp-core = { version = "4.1.0-dev", path = "../../../../primitives/core" }
-sp-io = { version = "4.0.0-dev", path = "../../../../primitives/io" }
-sp-keystore = { version = "0.10.0", path = "../../../../primitives/keystore" }
-sp-externalities = { version = "0.10.0", path = "../../../../primitives/externalities" }
+sp-state-machine = { version = "0.11.0", path = "../../../../primitives/state-machine" }
+sp-runtime = { version = "5.0.0", path = "../../../../primitives/runtime" }
+sp-core = { version = "5.0.0", path = "../../../../primitives/core" }
+sp-io = { version = "5.0.0", path = "../../../../primitives/io" }
+sp-keystore = { version = "0.11.0", path = "../../../../primitives/keystore" }
+sp-externalities = { version = "0.11.0", path = "../../../../primitives/externalities" }
 sp-version = { version = "4.0.0-dev", path = "../../../../primitives/version" }
 
 remote-externalities = { version = "0.10.0-dev", path = "../../remote-externalities" }
-- 
GitLab