diff --git a/Cargo.toml b/Cargo.toml index 79b96fad..a4acafd3 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,7 +10,7 @@ edition = "2018" [dependencies] auto_impl = "1.0" -ethereum = { git = "https://github.com/rust-ethereum/ethereum.git", rev = "3be0d8fd4c2ad1ba216b69ef65b9382612efc8ba", default-features = false } +ethereum = { git = "https://github.com/rust-ethereum/ethereum.git", rev = "bbb544622208ef6e9890a2dbc224248f6dd13318", default-features = false } log = { version = "0.4", default-features = false } primitive-types = { version = "0.13", default-features = false, features = ["rlp"] } rlp = { version = "0.6", default-features = false } @@ -18,7 +18,7 @@ sha3 = { version = "0.10", default-features = false } # Optional dependencies environmental = { version = "1.1.2", default-features = false, optional = true } -scale-codec = { package = "parity-scale-codec", version = "3.2", default-features = false, features = ["derive"], optional = true } +scale-codec = { package = "parity-scale-codec", version = "3.7.5", default-features = false, features = ["derive"], optional = true } scale-info = { version = "2.3", default-features = false, features = ["derive"], optional = true } serde = { version = "1.0", default-features = false, features = ["derive"], optional = true } @@ -81,4 +81,4 @@ members = [ "gasometer", "runtime", "fuzzer", -] +] \ No newline at end of file diff --git a/core/src/error.rs b/core/src/error.rs index 9c6dd34e..1841b3e1 100644 --- a/core/src/error.rs +++ b/core/src/error.rs @@ -18,7 +18,12 @@ pub enum Capture { #[derive(Clone, Debug, Eq, PartialEq)] #[cfg_attr( feature = "with-codec", - derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) + derive( + scale_codec::Encode, + scale_codec::Decode, + scale_codec::DecodeWithMemTracking, + scale_info::TypeInfo + ) )] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub enum ExitReason { @@ -59,7 +64,12 @@ impl ExitReason { #[derive(Clone, Copy, Debug, Eq, PartialEq)] #[cfg_attr( feature = "with-codec", - derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) + derive( + scale_codec::Encode, + scale_codec::Decode, + scale_codec::DecodeWithMemTracking, + scale_info::TypeInfo + ) )] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub enum ExitSucceed { @@ -81,7 +91,12 @@ impl From for ExitReason { #[derive(Clone, Copy, Debug, Eq, PartialEq)] #[cfg_attr( feature = "with-codec", - derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) + derive( + scale_codec::Encode, + scale_codec::Decode, + scale_codec::DecodeWithMemTracking, + scale_info::TypeInfo + ) )] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub enum ExitRevert { @@ -99,7 +114,12 @@ impl From for ExitReason { #[derive(Clone, Debug, Eq, PartialEq)] #[cfg_attr( feature = "with-codec", - derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) + derive( + scale_codec::Encode, + scale_codec::Decode, + scale_codec::DecodeWithMemTracking, + scale_info::TypeInfo + ) )] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub enum ExitError { @@ -172,7 +192,12 @@ impl From for ExitReason { #[derive(Clone, Debug, Eq, PartialEq)] #[cfg_attr( feature = "with-codec", - derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) + derive( + scale_codec::Encode, + scale_codec::Decode, + scale_codec::DecodeWithMemTracking, + scale_info::TypeInfo + ) )] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub enum ExitFatal { diff --git a/core/src/opcode.rs b/core/src/opcode.rs index 97cd18f3..0b40a4ce 100644 --- a/core/src/opcode.rs +++ b/core/src/opcode.rs @@ -2,7 +2,12 @@ #[derive(Clone, Copy, Debug, Eq, PartialEq)] #[cfg_attr( feature = "with-codec", - derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) + derive( + scale_codec::Encode, + scale_codec::Decode, + scale_codec::DecodeWithMemTracking, + scale_info::TypeInfo + ) )] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub struct Opcode(pub u8);