From b160820620aa9fd30050d5fcb306be4e12d58c8c Mon Sep 17 00:00:00 2001 From: Qinxuan Chen Date: Thu, 29 Feb 2024 03:05:20 +0800 Subject: [PATCH] chore: rename feature `with-codec` => `with-scale` (#56) --- .github/workflows/ci.yml | 2 +- Cargo.toml | 10 +++++----- src/account.rs | 5 ++++- src/block.rs | 4 ++-- src/header.rs | 8 ++++---- src/log.rs | 4 ++-- src/receipt.rs | 20 ++++++++++---------- src/transaction/eip1559.rs | 4 ++-- src/transaction/eip2930.rs | 14 +++++--------- src/transaction/legacy.rs | 36 ++++++++++++++++-------------------- src/transaction/mod.rs | 8 ++++---- 11 files changed, 55 insertions(+), 60 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9a70a50..dafb7b3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -34,7 +34,7 @@ jobs: - uses: actions-rs/cargo@v1 with: command: build - args: --all --release + args: --all --release --all-features - uses: actions-rs/cargo@v1 with: command: build diff --git a/Cargo.toml b/Cargo.toml index 974038d..8135929 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,7 +17,7 @@ rlp = { version = "0.5.2", default-features = false, features = ["derive"] } sha3 = { version = "0.10", default-features = false } trie-root = { version = "0.18", default-features = false } -codec = { package = "parity-scale-codec", version = "3.2", default-features = false, features = ["derive"], optional = true } +scale-codec = { package = "parity-scale-codec", version = "3.2", 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 } @@ -29,17 +29,17 @@ triehash = "0.8.4" [features] default = ["std"] -with-codec = ["codec", "scale-info", "ethereum-types/codec"] +with-scale = ["scale-codec", "scale-info", "ethereum-types/codec"] with-serde = ["serde", "ethereum-types/serialize"] std = [ "bytes/std", - "codec/std", "ethereum-types/std", "hash-db/std", "hash256-std-hasher/std", "rlp/std", - "scale-info/std", - "serde/std", "sha3/std", "trie-root/std", + "scale-codec?/std", + "scale-info?/std", + "serde?/std", ] diff --git a/src/account.rs b/src/account.rs index 9344939..98287f2 100644 --- a/src/account.rs +++ b/src/account.rs @@ -2,7 +2,10 @@ use ethereum_types::{H256, U256}; #[derive(Clone, Debug, PartialEq, Eq)] #[derive(rlp::RlpEncodable, rlp::RlpDecodable)] -#[cfg_attr(feature = "with-codec", derive(codec::Encode, codec::Decode))] +#[cfg_attr( + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) +)] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub struct Account { pub nonce: U256, diff --git a/src/block.rs b/src/block.rs index 4940e12..234b0d0 100644 --- a/src/block.rs +++ b/src/block.rs @@ -13,8 +13,8 @@ use crate::{ #[derive(Clone, Debug, PartialEq, Eq)] #[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) )] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub struct Block { diff --git a/src/header.rs b/src/header.rs index f3afcdf..037f6b3 100644 --- a/src/header.rs +++ b/src/header.rs @@ -3,14 +3,14 @@ use sha3::{Digest, Keccak256}; use crate::Bytes; +/// Ethereum header definition. #[derive(Clone, Debug, PartialEq, Eq)] #[derive(rlp::RlpEncodable, rlp::RlpDecodable)] #[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) )] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] -/// Ethereum header definition. pub struct Header { pub parent_hash: H256, pub ommers_hash: H256, @@ -57,8 +57,8 @@ impl Header { } } -#[derive(Clone, Debug, PartialEq, Eq)] /// Partial header definition without ommers hash and transactions root. +#[derive(Clone, Debug, PartialEq, Eq)] pub struct PartialHeader { pub parent_hash: H256, pub beneficiary: H160, diff --git a/src/log.rs b/src/log.rs index 036b3cd..6575633 100644 --- a/src/log.rs +++ b/src/log.rs @@ -7,8 +7,8 @@ use crate::Bytes; #[derive(Clone, Debug, PartialEq, Eq)] #[derive(rlp::RlpEncodable, rlp::RlpDecodable)] #[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) )] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub struct Log { diff --git a/src/receipt.rs b/src/receipt.rs index 23ab8e6..2cb3b4a 100644 --- a/src/receipt.rs +++ b/src/receipt.rs @@ -12,8 +12,8 @@ use crate::{ #[derive(Clone, Debug, PartialEq, Eq)] #[derive(rlp::RlpEncodable, rlp::RlpDecodable)] #[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) )] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub struct FrontierReceiptData { @@ -26,8 +26,8 @@ pub struct FrontierReceiptData { #[derive(Clone, Debug, PartialEq, Eq)] #[derive(rlp::RlpEncodable, rlp::RlpDecodable)] #[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) )] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub struct EIP658ReceiptData { @@ -81,8 +81,8 @@ impl EnvelopedDecodable for ReceiptV1 { #[derive(Clone, Debug, PartialEq, Eq)] #[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) )] #[cfg_attr( feature = "with-serde", @@ -148,8 +148,8 @@ impl From for EIP658ReceiptData { #[derive(Clone, Debug, PartialEq, Eq)] #[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) )] #[cfg_attr( feature = "with-serde", @@ -224,8 +224,8 @@ impl From for EIP658ReceiptData { #[derive(Clone, Debug, PartialEq, Eq)] #[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) )] #[cfg_attr( feature = "with-serde", diff --git a/src/transaction/eip1559.rs b/src/transaction/eip1559.rs index 3b01e58..1429fd0 100644 --- a/src/transaction/eip1559.rs +++ b/src/transaction/eip1559.rs @@ -9,8 +9,8 @@ use crate::{ #[derive(Clone, Debug, PartialEq, Eq)] #[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) )] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub struct EIP1559Transaction { diff --git a/src/transaction/eip2930.rs b/src/transaction/eip2930.rs index 25da6a0..d613139 100644 --- a/src/transaction/eip2930.rs +++ b/src/transaction/eip2930.rs @@ -8,14 +8,10 @@ use crate::{transaction::TransactionAction, Bytes}; #[derive(Clone, Debug, PartialEq, Eq)] #[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) -)] -#[cfg_attr( - feature = "with-serde", - derive(serde::Serialize, serde::Deserialize), - serde(rename_all = "camelCase") + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) )] +#[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub struct AccessListItem { pub address: Address, pub storage_keys: Vec, @@ -42,8 +38,8 @@ pub type AccessList = Vec; #[derive(Clone, Debug, PartialEq, Eq)] #[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) )] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub struct EIP2930Transaction { diff --git a/src/transaction/legacy.rs b/src/transaction/legacy.rs index ee22b2c..792a7aa 100644 --- a/src/transaction/legacy.rs +++ b/src/transaction/legacy.rs @@ -8,8 +8,8 @@ use crate::Bytes; #[derive(Clone, Copy, Debug, PartialEq, Eq)] #[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) )] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub enum TransactionAction { @@ -44,8 +44,8 @@ impl rlp::Decodable for TransactionAction { #[derive(Clone, Copy, Debug, PartialEq, Eq)] #[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) )] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub struct TransactionRecoveryId(pub u64); @@ -77,7 +77,7 @@ impl TransactionRecoveryId { } #[derive(Clone, Debug, PartialEq, Eq)] -#[cfg_attr(feature = "with-codec", derive(scale_info::TypeInfo))] +#[cfg_attr(feature = "with-scale", derive(scale_info::TypeInfo))] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub struct TransactionSignature { v: TransactionRecoveryId, @@ -146,32 +146,32 @@ impl TransactionSignature { } } -#[cfg(feature = "codec")] -impl codec::Encode for TransactionSignature { +#[cfg(feature = "with-scale")] +impl scale_codec::Encode for TransactionSignature { fn size_hint(&self) -> usize { - codec::Encode::size_hint(&(self.v.0, self.r, self.s)) + scale_codec::Encode::size_hint(&(self.v.0, self.r, self.s)) } fn using_encoded R>(&self, f: F) -> R { - codec::Encode::using_encoded(&(self.v.0, self.r, self.s), f) + scale_codec::Encode::using_encoded(&(self.v.0, self.r, self.s), f) } } -#[cfg(feature = "codec")] -impl codec::Decode for TransactionSignature { - fn decode(value: &mut I) -> Result { - let (v, r, s) = codec::Decode::decode(value)?; +#[cfg(feature = "with-scale")] +impl scale_codec::Decode for TransactionSignature { + fn decode(value: &mut I) -> Result { + let (v, r, s) = scale_codec::Decode::decode(value)?; match Self::new(v, r, s) { Some(signature) => Ok(signature), - None => Err(codec::Error::from("Invalid signature")), + None => Err(scale_codec::Error::from("Invalid signature")), } } } #[derive(Clone, Debug, PartialEq, Eq)] #[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) )] #[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] pub struct LegacyTransaction { @@ -250,10 +250,6 @@ impl rlp::Decodable for LegacyTransaction { } #[derive(Clone, Debug, PartialEq, Eq)] -#[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) -)] pub struct LegacyTransactionMessage { pub nonce: U256, pub gas_price: U256, diff --git a/src/transaction/mod.rs b/src/transaction/mod.rs index ba9a575..fd6cbd5 100644 --- a/src/transaction/mod.rs +++ b/src/transaction/mod.rs @@ -37,8 +37,8 @@ impl EnvelopedDecodable for TransactionV0 { #[derive(Clone, Debug, PartialEq, Eq)] #[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) )] #[cfg_attr( feature = "with-serde", @@ -104,8 +104,8 @@ impl EnvelopedDecodable for TransactionV1 { #[derive(Clone, Debug, PartialEq, Eq)] #[cfg_attr( - feature = "with-codec", - derive(codec::Encode, codec::Decode, scale_info::TypeInfo) + feature = "with-scale", + derive(scale_codec::Encode, scale_codec::Decode, scale_info::TypeInfo) )] #[cfg_attr( feature = "with-serde",