diff --git a/polkadot/Cargo.lock b/polkadot/Cargo.lock
index ab0785e57315b0fa22fcb91b46d0453328feca54..b102622e157fb849c007f158e0098034d4592140 100644
--- a/polkadot/Cargo.lock
+++ b/polkadot/Cargo.lock
@@ -2478,7 +2478,7 @@ dependencies = [
 
 [[package]]
 name = "kusama-runtime"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "bitvec",
  "frame-benchmarking",
@@ -4372,7 +4372,7 @@ checksum = "feb3b2b1033b8a60b4da6ee470325f887758c95d5320f52f9ce0df055a55940e"
 
 [[package]]
 name = "polkadot"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "assert_cmd",
  "futures 0.3.5",
@@ -4411,7 +4411,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-availability-store"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "derive_more 0.99.9",
  "exit-future",
@@ -4437,7 +4437,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-cli"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "frame-benchmarking-cli",
  "futures 0.3.5",
@@ -4462,7 +4462,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-collator"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "futures 0.3.5",
  "futures-timer 2.0.2",
@@ -4500,7 +4500,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-erasure-coding"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "derive_more 0.15.0",
  "parity-scale-codec",
@@ -4512,7 +4512,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-network"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "arrayvec 0.4.12",
  "bytes 0.5.5",
@@ -4560,7 +4560,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-network-test"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "futures 0.3.5",
  "log 0.4.8",
@@ -4715,7 +4715,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-parachain"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "derive_more 0.99.9",
  "futures 0.3.5",
@@ -4754,7 +4754,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-primitives"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "bitvec",
  "frame-system",
@@ -4778,7 +4778,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-rpc"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "jsonrpc-core",
  "pallet-transaction-payment-rpc",
@@ -4804,7 +4804,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-runtime"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "bitvec",
  "frame-benchmarking",
@@ -4878,7 +4878,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-runtime-common"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "bitvec",
  "frame-benchmarking",
@@ -4966,7 +4966,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-service"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "env_logger",
  "frame-benchmarking",
@@ -5109,7 +5109,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-statement-table"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "parity-scale-codec",
  "polkadot-primitives",
@@ -5118,7 +5118,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-test-runtime"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "bitvec",
  "frame-executive",
@@ -5249,7 +5249,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-validation"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "ansi_term 0.12.1",
  "bitvec",
@@ -8427,7 +8427,7 @@ dependencies = [
 
 [[package]]
 name = "test-parachain-adder"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "dlmalloc",
  "parity-scale-codec",
@@ -8468,7 +8468,7 @@ dependencies = [
 
 [[package]]
 name = "test-parachain-halt"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "substrate-wasm-builder-runner 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
@@ -9499,7 +9499,7 @@ dependencies = [
 
 [[package]]
 name = "westend-runtime"
-version = "0.8.19"
+version = "0.8.22"
 dependencies = [
  "bitvec",
  "frame-benchmarking",
diff --git a/polkadot/Cargo.toml b/polkadot/Cargo.toml
index f595fef8552bec1af42232e200f6cccb0709c27a..23079972a0307bccf3d6f0419c78ea144bf44a42 100644
--- a/polkadot/Cargo.toml
+++ b/polkadot/Cargo.toml
@@ -4,7 +4,7 @@ path = "src/main.rs"
 
 [package]
 name = "polkadot"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2018"
 
diff --git a/polkadot/availability-store/Cargo.toml b/polkadot/availability-store/Cargo.toml
index 83bc002d9088a58fe619265da2eed22235ec0b96..82c630ac635268f6446e519a51746b6715a71bac 100644
--- a/polkadot/availability-store/Cargo.toml
+++ b/polkadot/availability-store/Cargo.toml
@@ -1,7 +1,7 @@
 [package]
 name = "polkadot-availability-store"
 description = "Persistent database for parachain data"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2018"
 
diff --git a/polkadot/cli/Cargo.toml b/polkadot/cli/Cargo.toml
index fd0b0231e0e4842aa77ffc07a9dac50c21e29d0f..bcff87462b6a89eb716e12dae54910876367463a 100644
--- a/polkadot/cli/Cargo.toml
+++ b/polkadot/cli/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "polkadot-cli"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 description = "Polkadot Relay-chain Client Node"
 edition = "2018"
diff --git a/polkadot/collator/Cargo.toml b/polkadot/collator/Cargo.toml
index df0bbc94cddb53edc75851fcc093d8f38df6dedf..38cb3ee2e23c9fa9df48f80be7983a49ec19d6d1 100644
--- a/polkadot/collator/Cargo.toml
+++ b/polkadot/collator/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "polkadot-collator"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 description = "Collator node implementation"
 edition = "2018"
diff --git a/polkadot/erasure-coding/Cargo.toml b/polkadot/erasure-coding/Cargo.toml
index e4215f8c90cadc2c930637270052e9fb63120fab..1965150ca67abef411509179466d50f7ffb964d1 100644
--- a/polkadot/erasure-coding/Cargo.toml
+++ b/polkadot/erasure-coding/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "polkadot-erasure-coding"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2018"
 
diff --git a/polkadot/network/Cargo.toml b/polkadot/network/Cargo.toml
index 34c377caf118b71ad111ab1a978abba1ee9b6657..6685bbb38218e41ca98b353def11a15dfee8fc3c 100644
--- a/polkadot/network/Cargo.toml
+++ b/polkadot/network/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "polkadot-network"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 description = "Polkadot-specific networking protocol"
 edition = "2018"
diff --git a/polkadot/network/test/Cargo.toml b/polkadot/network/test/Cargo.toml
index 69f5a96f3cdc445ca2e94024fb99225424ec8833..d59123fad98e0871e856bdb432df8195cefd735f 100644
--- a/polkadot/network/test/Cargo.toml
+++ b/polkadot/network/test/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "polkadot-network-test"
-version = "0.8.19"
+version = "0.8.22"
 license = "GPL-3.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2018"
diff --git a/polkadot/parachain/Cargo.toml b/polkadot/parachain/Cargo.toml
index 56092f1046d80063f2bd7b358e3c71d1ffbaac6a..bb8a340ecaea9b473558086c05f288702177318a 100644
--- a/polkadot/parachain/Cargo.toml
+++ b/polkadot/parachain/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "polkadot-parachain"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 description = "Types and utilities for creating and working with parachains"
 edition = "2018"
diff --git a/polkadot/parachain/test-parachains/adder/Cargo.toml b/polkadot/parachain/test-parachains/adder/Cargo.toml
index 9bd6b67ba1c02b398260b13390e9c598ee51bcb2..5b2e79257f1d5afe1130c933f376567e0974127d 100644
--- a/polkadot/parachain/test-parachains/adder/Cargo.toml
+++ b/polkadot/parachain/test-parachains/adder/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "test-parachain-adder"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 description = "Test parachain which adds to a number as its state transition"
 edition = "2018"
diff --git a/polkadot/parachain/test-parachains/halt/Cargo.toml b/polkadot/parachain/test-parachains/halt/Cargo.toml
index 892f82273d98da35b32158f3f4387d1fc1688cb8..9d1af0e64623d472e33c034847dc9a3dacadb2b2 100644
--- a/polkadot/parachain/test-parachains/halt/Cargo.toml
+++ b/polkadot/parachain/test-parachains/halt/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "test-parachain-halt"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 description = "Test parachain which executes forever"
 edition = "2018"
diff --git a/polkadot/primitives/Cargo.toml b/polkadot/primitives/Cargo.toml
index 442169cbf282ff118844e7e38a0381fcdf0d282d..797b21df1209c8bc9ba4e9eb94341b4e00e4e6a9 100644
--- a/polkadot/primitives/Cargo.toml
+++ b/polkadot/primitives/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "polkadot-primitives"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2018"
 
diff --git a/polkadot/rpc/Cargo.toml b/polkadot/rpc/Cargo.toml
index 192954888162bdc14a89e8c600b81e5a159f9bba..04034f45eda766cc98f492307d2c3a378d1ba0a6 100644
--- a/polkadot/rpc/Cargo.toml
+++ b/polkadot/rpc/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "polkadot-rpc"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2018"
 
diff --git a/polkadot/runtime/common/Cargo.toml b/polkadot/runtime/common/Cargo.toml
index 66652c967ccec00236af249115454c6c44ce8222..e00d904915d14413f7178f6e15bee727c7e1995f 100644
--- a/polkadot/runtime/common/Cargo.toml
+++ b/polkadot/runtime/common/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "polkadot-runtime-common"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2018"
 
diff --git a/polkadot/runtime/common/src/registrar.rs b/polkadot/runtime/common/src/registrar.rs
index 5493d20839f581ea5e6c1235606053bb673b8d1a..bf56d733ca1ab6c548e518cd4de4dcf79c6bc66d 100644
--- a/polkadot/runtime/common/src/registrar.rs
+++ b/polkadot/runtime/common/src/registrar.rs
@@ -205,7 +205,7 @@ decl_storage! {
 #[cfg(feature = "std")]
 fn build<T: Trait>(config: &GenesisConfig<T>) {
 	let mut p = config.parachains.clone();
-	p.sort_unstable_by_key(|&(ref id, _, _)| *id);
+	p.sort_by_key(|&(ref id, _, _)| *id);
 	p.dedup_by_key(|&mut (ref id, _, _)| *id);
 
 	let only_ids: Vec<ParaId> = p.iter().map(|&(ref id, _, _)| id).cloned().collect();
diff --git a/polkadot/runtime/kusama/Cargo.toml b/polkadot/runtime/kusama/Cargo.toml
index 2f3f04ae8a9c1c3459dd7b0e9f47bf841c7a4a14..b8f2e5a248f825beb9026e5018a97af0a089a700 100644
--- a/polkadot/runtime/kusama/Cargo.toml
+++ b/polkadot/runtime/kusama/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "kusama-runtime"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2018"
 build = "build.rs"
diff --git a/polkadot/runtime/kusama/src/lib.rs b/polkadot/runtime/kusama/src/lib.rs
index 29215aae3682d2ec028dd9bef421199e3dbb89c3..70e15cbc5d299f4c0958bb112a14a26e7e67157c 100644
--- a/polkadot/runtime/kusama/src/lib.rs
+++ b/polkadot/runtime/kusama/src/lib.rs
@@ -87,7 +87,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
 	spec_name: create_runtime_str!("kusama"),
 	impl_name: create_runtime_str!("parity-kusama"),
 	authoring_version: 2,
-	spec_version: 2021,
+	spec_version: 2022,
 	impl_version: 0,
 	#[cfg(not(feature = "disable-runtime-api"))]
 	apis: RUNTIME_API_VERSIONS,
diff --git a/polkadot/runtime/parachains/src/paras.rs b/polkadot/runtime/parachains/src/paras.rs
index 2eab9c05465466229781f820bddd909c489ac9c2..4c628818a6a7a5d4307305933d3e38669515e817 100644
--- a/polkadot/runtime/parachains/src/paras.rs
+++ b/polkadot/runtime/parachains/src/paras.rs
@@ -223,7 +223,7 @@ fn build<T: Trait>(config: &GenesisConfig<T>) {
 		.cloned()
 		.collect();
 
-	parachains.sort_unstable();
+	parachains.sort();
 	parachains.dedup();
 
 	Parachains::put(&parachains);
diff --git a/polkadot/runtime/polkadot/Cargo.toml b/polkadot/runtime/polkadot/Cargo.toml
index d399d9304d77872ce5f6637d10975a76ea8b2774..cd1b5e14365bf8cd3ea38e622e8006f3af7767ec 100644
--- a/polkadot/runtime/polkadot/Cargo.toml
+++ b/polkadot/runtime/polkadot/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "polkadot-runtime"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2018"
 build = "build.rs"
diff --git a/polkadot/runtime/polkadot/src/lib.rs b/polkadot/runtime/polkadot/src/lib.rs
index 195125d578744de777eda72a74c12d0c5028e1bd..328fd927bec71365cd5d32721603e75a7d4cac3f 100644
--- a/polkadot/runtime/polkadot/src/lib.rs
+++ b/polkadot/runtime/polkadot/src/lib.rs
@@ -86,7 +86,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
 	spec_name: create_runtime_str!("polkadot"),
 	impl_name: create_runtime_str!("parity-polkadot"),
 	authoring_version: 0,
-	spec_version: 21,
+	spec_version: 22,
 	impl_version: 0,
 	#[cfg(not(feature = "disable-runtime-api"))]
 	apis: RUNTIME_API_VERSIONS,
diff --git a/polkadot/runtime/test-runtime/Cargo.toml b/polkadot/runtime/test-runtime/Cargo.toml
index 60965effd758426866ac143e4db9296c1c0b894a..100b373935f5b84b434f5cec93fb30d2363f837a 100644
--- a/polkadot/runtime/test-runtime/Cargo.toml
+++ b/polkadot/runtime/test-runtime/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "polkadot-test-runtime"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2018"
 build = "build.rs"
diff --git a/polkadot/runtime/westend/Cargo.toml b/polkadot/runtime/westend/Cargo.toml
index 2cfea3a42477761e1c521de9ce14f37167f400fd..3e1d10010556a849bd490cb49ea5ecba2aadb659 100644
--- a/polkadot/runtime/westend/Cargo.toml
+++ b/polkadot/runtime/westend/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "westend-runtime"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2018"
 build = "build.rs"
diff --git a/polkadot/runtime/westend/src/lib.rs b/polkadot/runtime/westend/src/lib.rs
index 84daa4d204bb50326967b8a7b066e2a5a29f3e76..49cc91c533c7b0cc3f598329a15e681d08fef7fe 100644
--- a/polkadot/runtime/westend/src/lib.rs
+++ b/polkadot/runtime/westend/src/lib.rs
@@ -83,7 +83,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
 	spec_name: create_runtime_str!("westend"),
 	impl_name: create_runtime_str!("parity-westend"),
 	authoring_version: 2,
-	spec_version: 41,
+	spec_version: 42,
 	impl_version: 0,
 	#[cfg(not(feature = "disable-runtime-api"))]
 	apis: RUNTIME_API_VERSIONS,
diff --git a/polkadot/service/Cargo.toml b/polkadot/service/Cargo.toml
index 1f9af907b7928ebf936e25f052db0746b9df7571..9c16f6372ba02c2010f139584d45f01f78663cba 100644
--- a/polkadot/service/Cargo.toml
+++ b/polkadot/service/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "polkadot-service"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2018"
 
diff --git a/polkadot/statement-table/Cargo.toml b/polkadot/statement-table/Cargo.toml
index 86dc46f7f3275c136a0aeb3fa4a1fea1a5c04b79..358a9b37d7ae643ff9973969b9412107a4b56852 100644
--- a/polkadot/statement-table/Cargo.toml
+++ b/polkadot/statement-table/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "polkadot-statement-table"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2018"
 
diff --git a/polkadot/validation/Cargo.toml b/polkadot/validation/Cargo.toml
index eee53c69da7d1108e3a52dd6654a8ce31386b005..95d4643ada015d8d8d9db33182022fc4edab1a89 100644
--- a/polkadot/validation/Cargo.toml
+++ b/polkadot/validation/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "polkadot-validation"
-version = "0.8.19"
+version = "0.8.22"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2018"