diff --git a/substrate/Cargo.lock b/substrate/Cargo.lock
index 1ad583f7fa8489cef01b5ac31b3e76953ff267c1..c0dfa6fe08b22e9850e789e7af12f38dfaecace3 100644
--- a/substrate/Cargo.lock
+++ b/substrate/Cargo.lock
@@ -3226,14 +3226,12 @@ dependencies = [
  "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)",
  "sr-io 0.1.0",
  "sr-primitives 0.1.0",
  "sr-std 0.1.0",
- "srml-session 0.1.0",
  "srml-support 0.1.0",
  "srml-system 0.1.0",
  "substrate-inherents 0.1.0",
diff --git a/substrate/node/runtime/wasm/Cargo.lock b/substrate/node/runtime/wasm/Cargo.lock
index 0d6c80edeab42178442cf610a2f8fc9720dd014a..c7d1ef53cfefd7f67974ddd98bcf07ca0693f895 100644
--- a/substrate/node/runtime/wasm/Cargo.lock
+++ b/substrate/node/runtime/wasm/Cargo.lock
@@ -1436,12 +1436,10 @@ version = "0.1.0"
 dependencies = [
  "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "parity-codec-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
  "sr-primitives 0.1.0",
  "sr-std 0.1.0",
- "srml-session 0.1.0",
  "srml-support 0.1.0",
  "srml-system 0.1.0",
  "substrate-inherents 0.1.0",
diff --git a/substrate/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/substrate/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm
index da9604c4eba33a1705709d8d679edef9e30230ba..8340ec07c8f3a6b7936937fec3e661dac0f352e0 100644
Binary files a/substrate/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm and b/substrate/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm differ
diff --git a/substrate/srml/finality-tracker/Cargo.toml b/substrate/srml/finality-tracker/Cargo.toml
index 246d48d01c732e7fbf4360df72703df1dee325e2..ac30f1e13dc64eee7a4c3b9b6f630ec56c80a1cf 100644
--- a/substrate/srml/finality-tracker/Cargo.toml
+++ b/substrate/srml/finality-tracker/Cargo.toml
@@ -8,14 +8,12 @@ edition = "2018"
 hex-literal = "0.1.0"
 serde = { version = "1.0", default-features = false }
 serde_derive = { version = "1.0", optional = true }
-parity-codec = { version = "3.0", default-features = false }
-parity-codec-derive = { version = "3.0", default-features = false }
-substrate-inherents = { path = "../../core/inherents", default-features = false }
-sr-std = { path = "../../core/sr-std", default-features = false }
-sr-primitives = { path = "../../core/sr-primitives", default-features = false }
+parity-codec = { version = "3.1", default-features = false }
+inherents = { package = "substrate-inherents", path = "../../core/inherents", default-features = false }
+rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false }
+primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default-features = false }
 srml-support = { path = "../support", default-features = false }
 srml-system = { path = "../system", default-features = false }
-srml-session = { path = "../session", default-features = false }
 
 [dev-dependencies]
 substrate-primitives = { path = "../../core/primitives", default-features = false }
@@ -29,10 +27,9 @@ std = [
 	"serde/std",
 	"serde_derive",
 	"parity-codec/std",
-	"sr-std/std",
+	"rstd/std",
 	"srml-support/std",
-	"sr-primitives/std",
+	"primitives/std",
 	"srml-system/std",
-	"srml-session/std",
-	"substrate-inherents/std",
+	"inherents/std",
 ]
diff --git a/substrate/srml/finality-tracker/src/lib.rs b/substrate/srml/finality-tracker/src/lib.rs
index 43e95912cfb2940e235fba2ee66f9bad1cf0f158..5f417881f7482d337f66f5e9a931a70216c547ec 100644
--- a/substrate/srml/finality-tracker/src/lib.rs
+++ b/substrate/srml/finality-tracker/src/lib.rs
@@ -21,13 +21,13 @@
 #[macro_use]
 extern crate srml_support;
 
-use substrate_inherents::{
+use inherents::{
 	RuntimeString, InherentIdentifier, ProvideInherent,
 	InherentData, MakeFatalError,
 };
 use srml_support::StorageValue;
-use sr_primitives::traits::{As, One, Zero};
-use sr_std::{prelude::*, result, cmp, vec};
+use primitives::traits::{As, One, Zero};
+use rstd::{prelude::*, result, cmp, vec};
 use parity_codec::Decode;
 use srml_system::{ensure_inherent, Trait as SystemTrait};
 
@@ -68,7 +68,7 @@ impl<F, N> InherentDataProvider<F, N> {
 }
 
 #[cfg(feature = "std")]
-impl<F, N: Encode> substrate_inherents::ProvideInherentData for InherentDataProvider<F, N>
+impl<F, N: Encode> inherents::ProvideInherentData for InherentDataProvider<F, N>
 	where F: Fn() -> Result<N, RuntimeString>
 {
 	fn inherent_identifier(&self) -> &'static InherentIdentifier {
@@ -261,9 +261,9 @@ mod tests {
 
 	use sr_io::{with_externalities, TestExternalities};
 	use substrate_primitives::H256;
-	use sr_primitives::BuildStorage;
-	use sr_primitives::traits::{BlakeTwo256, IdentityLookup, OnFinalise, Header as HeaderT};
-	use sr_primitives::testing::{Digest, DigestItem, Header};
+	use primitives::BuildStorage;
+	use primitives::traits::{BlakeTwo256, IdentityLookup, OnFinalise, Header as HeaderT};
+	use primitives::testing::{Digest, DigestItem, Header};
 	use srml_support::impl_outer_origin;
 	use srml_system as system;
 	use lazy_static::lazy_static;