diff --git a/bridges/modules/beefy/Cargo.toml b/bridges/modules/beefy/Cargo.toml
index 4ead33c44314f82eb63650b7fff873be226fccb0..53c8006f878ac3b52ca295aa1f4314a503a6d7c1 100644
--- a/bridges/modules/beefy/Cargo.toml
+++ b/bridges/modules/beefy/Cargo.toml
@@ -5,6 +5,7 @@ description = "Module implementing BEEFY on-chain light client used for bridging
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+publish = false
 
 [lints]
 workspace = true
@@ -38,7 +39,7 @@ sp-io = { git = "https://github.com/paritytech/polkadot-sdk", branch = "master"
 bp-test-utils = { path = "../../primitives/test-utils" }
 
 [features]
-default = [ "std" ]
+default = ["std"]
 std = [
 	"bp-beefy/std",
 	"bp-runtime/std",
@@ -47,9 +48,15 @@ std = [
 	"frame-system/std",
 	"log/std",
 	"scale-info/std",
-	"serde",
+	"serde/std",
 	"sp-core/std",
 	"sp-runtime/std",
 	"sp-std/std",
 ]
-try-runtime = [ "frame-support/try-runtime", "frame-system/try-runtime" ]
+try-runtime = [
+	"frame-support/try-runtime",
+	"frame-system/try-runtime",
+	"pallet-beefy-mmr/try-runtime",
+	"pallet-mmr/try-runtime",
+	"sp-runtime/try-runtime",
+]
diff --git a/bridges/primitives/beefy/Cargo.toml b/bridges/primitives/beefy/Cargo.toml
index b6bb2698689b64d220f37495a02f8192ab5b16f5..0a282090f7f2ea4d46699bcaae51b42ea77e871f 100644
--- a/bridges/primitives/beefy/Cargo.toml
+++ b/bridges/primitives/beefy/Cargo.toml
@@ -5,12 +5,13 @@ version = "0.1.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+publish = false
 
 [lints]
 workspace = true
 
 [dependencies]
-codec = { package = "parity-scale-codec", version = "3.1.5", default-features = false, features = ["derive", "bit-vec"] }
+codec = { package = "parity-scale-codec", version = "3.1.5", default-features = false, features = ["bit-vec", "derive"] }
 scale-info = { version = "2.11.0", default-features = false, features = ["bit-vec", "derive"] }
 serde = { default-features = false, features = ["alloc", "derive"], workspace = true }
 
@@ -29,8 +30,9 @@ sp-runtime = { git = "https://github.com/paritytech/polkadot-sdk", branch = "mas
 sp-std = { git = "https://github.com/paritytech/polkadot-sdk", branch = "master", default-features = false }
 
 [features]
-default = [ "std" ]
+default = ["std"]
 std = [
+	"binary-merkle-tree/std",
 	"bp-runtime/std",
 	"codec/std",
 	"frame-support/std",
diff --git a/bridges/relays/client-substrate/Cargo.toml b/bridges/relays/client-substrate/Cargo.toml
index 9240af7b59c5ba4c8d95a267ce1b1aa35673c007..3049d8350b7062463bfa46e3d5443648be8ca77b 100644
--- a/bridges/relays/client-substrate/Cargo.toml
+++ b/bridges/relays/client-substrate/Cargo.toml
@@ -4,6 +4,7 @@ version = "0.1.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+publish = false
 
 [lints]
 workspace = true
diff --git a/bridges/relays/equivocation/Cargo.toml b/bridges/relays/equivocation/Cargo.toml
index 6f65d40fcbe7adbcee622c9361c4f92d09a6ba85..3b99e4349e037c01506ea4670e5b2bff4f9a1138 100644
--- a/bridges/relays/equivocation/Cargo.toml
+++ b/bridges/relays/equivocation/Cargo.toml
@@ -5,6 +5,7 @@ authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
 description = "Equivocation detector"
+publish = false
 
 [lints]
 workspace = true
diff --git a/bridges/relays/finality/Cargo.toml b/bridges/relays/finality/Cargo.toml
index 8cf3d409cfe98f4490055cb3c8c8a98b93a71733..53d2ce579f6befa557e444c00eb72a348fb66d61 100644
--- a/bridges/relays/finality/Cargo.toml
+++ b/bridges/relays/finality/Cargo.toml
@@ -5,6 +5,7 @@ authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
 description = "Finality proofs relay"
+publish = false
 
 [lints]
 workspace = true
diff --git a/bridges/relays/finality/README.md b/bridges/relays/finality/README.md
index 0a8d6a4c8b128825f7ee3bdec9cf812bea317436..92e765cea0e505be7854e17a9b91df520bba32b0 100644
--- a/bridges/relays/finality/README.md
+++ b/bridges/relays/finality/README.md
@@ -3,7 +3,7 @@
 The finality relay is able to work with different finality engines. In the modern Substrate world they are GRANDPA
 and BEEFY. Let's talk about GRANDPA here, because BEEFY relay and bridge BEEFY pallet are in development.
 
-In general, the relay works as follows: it connects to the source and target chain. The source chain must have the 
+In general, the relay works as follows: it connects to the source and target chain. The source chain must have the
 [GRANDPA gadget](https://github.com/paritytech/finality-grandpa) running (so it can't be a parachain). The target
 chain must have the [bridge GRANDPA pallet](../../modules/grandpa/) deployed at its runtime. The relay subscribes
 to the GRANDPA finality notifications at the source chain and when the new justification is received, it is submitted
@@ -41,18 +41,20 @@ Finality relay provides several metrics. Metrics names depend on names of source
 shows metrics names for Rococo (source chain) to BridgeHubWestend (target chain) finality relay. For other
 chains, simply change chain names. So the metrics are:
 
-- `Rococo_to_BridgeHubWestend_Sync_best_source_block_number` - returns best finalized source chain (Rococo) block number, known
-  to the relay. If relay is running in [on-demand mode](../bin-substrate/src/cli/relay_headers_and_messages/), the
+- `Rococo_to_BridgeHubWestend_Sync_best_source_block_number` - returns best finalized source chain (Rococo) block
+  number, known to the relay.
+  If relay is running in [on-demand mode](../bin-substrate/src/cli/relay_headers_and_messages/), the
   number may not match (it may be far behind) the actual best finalized number;
 
-- `Rococo_to_BridgeHubWestend_Sync_best_source_at_target_block_number` - returns best finalized source chain (Rococo) block
-  number that is known to the bridge GRANDPA pallet at the target chain.
+- `Rococo_to_BridgeHubWestend_Sync_best_source_at_target_block_number` - returns best finalized source chain (Rococo)
+  block number that is known to the bridge GRANDPA pallet at the target chain.
 
-- `Rococo_to_BridgeHubWestend_Sync_is_source_and_source_at_target_using_different_forks` - if this metrics is set to `1`, then
-  the best source chain header, known to the target chain doesn't match the same-number-header at the source chain.
-  It means that the GRANDPA validators set has crafted the duplicate justification and it has been submitted to the
-  target chain. Normally (if majority of validators are honest and if you're running finality relay without large
-  breaks) this shall not happen and the metric will have `0` value.
+- `Rococo_to_BridgeHubWestend_Sync_is_source_and_source_at_target_using_different_forks` - if this metrics is set
+  to `1`, then  the best source chain header known to the target chain doesn't match the same-number-header
+  at the source chain. It means that the GRANDPA validators set has crafted the duplicate justification
+  and it has been submitted to the target chain.
+  Normally (if majority of validators are honest and if you're running finality relay without large breaks)
+  this shall not happen and the metric will have `0` value.
 
 If relay operates properly, you should see that the `Rococo_to_BridgeHubWestend_Sync_best_source_at_target_block_number`
 tries to reach the `Rococo_to_BridgeHubWestend_Sync_best_source_block_number`. And the latter one always increases.
diff --git a/bridges/relays/lib-substrate-relay/Cargo.toml b/bridges/relays/lib-substrate-relay/Cargo.toml
index c064f11b22eb98ed312bfae93e646e74f551eba1..76be5a92a794a45356348ee4b41ba831a7ca3021 100644
--- a/bridges/relays/lib-substrate-relay/Cargo.toml
+++ b/bridges/relays/lib-substrate-relay/Cargo.toml
@@ -4,6 +4,7 @@ version = "0.1.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+publish = false
 
 [lints]
 workspace = true
diff --git a/bridges/relays/messages/Cargo.toml b/bridges/relays/messages/Cargo.toml
index 1233c8af741a53ac3d082365b0274bd5a758eed1..b3f0a9fd19185445c3c038dd7a5ec1855bf6355a 100644
--- a/bridges/relays/messages/Cargo.toml
+++ b/bridges/relays/messages/Cargo.toml
@@ -4,6 +4,7 @@ version = "0.1.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+publish = false
 
 [lints]
 workspace = true
diff --git a/bridges/relays/parachains/Cargo.toml b/bridges/relays/parachains/Cargo.toml
index 05a995b8514a48d08862f6bc9d9a343c175870be..f37e636a9c598ec2e31dfaceebc2a21d82687291 100644
--- a/bridges/relays/parachains/Cargo.toml
+++ b/bridges/relays/parachains/Cargo.toml
@@ -4,6 +4,7 @@ version = "0.1.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2018"
 license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+publish = false
 
 [lints]
 workspace = true
diff --git a/bridges/relays/parachains/README.md b/bridges/relays/parachains/README.md
index bacd28594d8076f352a0eadf0d1176b1aac672a4..9043b0b0a9cdd84c984d62b4e7c3adc6df44d6bc 100644
--- a/bridges/relays/parachains/README.md
+++ b/bridges/relays/parachains/README.md
@@ -1,7 +1,7 @@
 # Parachains Finality Relay
 
 The parachains finality relay works with two chains - source relay chain and target chain (which may be standalone
-chain, relay chain or a parachain). The source chain must have the 
+chain, relay chain or a parachain). The source chain must have the
 [`paras` pallet](https://github.com/paritytech/polkadot/tree/master/runtime/parachains/src/paras) deployed at its
 runtime. The target chain must have the [bridge parachains pallet](../../modules/parachains/) deployed at its runtime.
 
@@ -39,11 +39,12 @@ Rococo (source relay chain) to BridgeHubWestend (target chain) parachains finali
 change chain names. So the metrics are:
 
 - `Rococo_to_BridgeHubWestend_Parachains_best_parachain_block_number_at_source` - returns best known parachain block
-   number, registered in the `paras` pallet at the source relay chain (Rococo in our example);
+  number, registered in the `paras` pallet at the source relay chain (Rococo in our example);
 
 - `Rococo_to_BridgeHubWestend_Parachains_best_parachain_block_number_at_target` - returns best known parachain block
-   number, registered in the bridge parachains pallet at the target chain (BridgeHubWestend in our example).
+  number, registered in the bridge parachains pallet at the target chain (BridgeHubWestend in our example).
 
-If relay operates properly, you should see that the `Rococo_to_BridgeHubWestend_Parachains_best_parachain_block_number_at_target`
-tries to reach the `Rococo_to_BridgeHubWestend_Parachains_best_parachain_block_number_at_source`. And the latter one
-always increases.
+If relay operates properly, you should see that
+the `Rococo_to_BridgeHubWestend_Parachains_best_parachain_block_number_at_target` tries to reach
+the `Rococo_to_BridgeHubWestend_Parachains_best_parachain_block_number_at_source`.
+And the latter one always increases.
diff --git a/bridges/relays/utils/Cargo.toml b/bridges/relays/utils/Cargo.toml
index d1eeba2b8fd11088f38c3f9b59c268914d8dbf55..bc894b34e471e72fdd6af75fe752417c2246631a 100644
--- a/bridges/relays/utils/Cargo.toml
+++ b/bridges/relays/utils/Cargo.toml
@@ -4,6 +4,7 @@ version = "0.1.0"
 authors = ["Parity Technologies <admin@parity.io>"]
 edition = "2021"
 license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
+publish = false
 
 [lints]
 workspace = true