diff --git a/substrate/core/sr-primitives/src/lib.rs b/substrate/core/sr-primitives/src/lib.rs index 2deb05c90f57784e37b7381cd260fe9d3c82a732..5c87782b04802536061b84de320129f1efd455e0 100644 --- a/substrate/core/sr-primitives/src/lib.rs +++ b/substrate/core/sr-primitives/src/lib.rs @@ -534,7 +534,7 @@ pub struct OpaqueExtrinsic(pub Vec<u8>); #[cfg(feature = "std")] impl ::serde::Serialize for OpaqueExtrinsic { fn serialize<S>(&self, seq: S) -> Result<S::Ok, S::Error> where S: ::serde::Serializer { - ::codec::Encode::using_encoded(&self.0, |bytes| seq.serialize_bytes(bytes)) + ::codec::Encode::using_encoded(&self.0, |bytes| ::substrate_primitives::bytes::serialize(bytes, seq)) } } @@ -617,4 +617,10 @@ mod tests { // check that as-style methods are not working with regular items assert!(b1.as_authorities_change().is_none()); } + + #[test] + fn opaque_extrinsic_serialization() { + let ex = super::OpaqueExtrinsic(vec![1, 2, 3, 4]); + assert_eq!(serde_json::to_string(&ex).unwrap(), "\"0x1001020304\"".to_owned()); + } } diff --git a/substrate/node/primitives/src/lib.rs b/substrate/node/primitives/src/lib.rs index 027330613468e581f5c2c7cf687148e3b91ba8fc..504ac5db953dc9a59741a800b175c2607b0ae221 100644 --- a/substrate/node/primitives/src/lib.rs +++ b/substrate/node/primitives/src/lib.rs @@ -31,8 +31,6 @@ extern crate sr_primitives as runtime_primitives; extern crate substrate_primitives as primitives; use runtime_primitives::generic; -#[cfg(feature = "std")] -use primitives::bytes; use runtime_primitives::{OpaqueExtrinsic, traits::BlakeTwo256}; pub use runtime_primitives::BasicInherentData as InherentData;