Skip to content
This repository was archived by the owner on Oct 19, 2024. It is now read-only.

Commit 42b0bbd

Browse files
authored
Merge branch 'gakonst:master' into master
2 parents 49135fb + 90b87bd commit 42b0bbd

File tree

10 files changed

+54
-60
lines changed

10 files changed

+54
-60
lines changed

ethers-contract/src/multicall/middleware.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -338,7 +338,7 @@ impl<M: Middleware> Multicall<M> {
338338
TypedTransaction::Eip2930(tx) => (tx.tx.to, tx.tx.data, tx.tx.value),
339339
TypedTransaction::Eip1559(tx) => (tx.to, tx.data, tx.value),
340340
#[cfg(feature = "optimism")]
341-
TypedTransaction::OptimismDeposited(tx) => (tx.tx.to, tx.tx.data, tx.tx.value),
341+
TypedTransaction::DepositTransaction(tx) => (tx.tx.to, tx.tx.data, tx.tx.value),
342342
};
343343
if data.is_none() && !call.function.outputs.is_empty() {
344344
return self

ethers-core/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ strum = { version = "0.25", features = ["derive"] }
4949
num_enum = "0.7"
5050

5151
# macros feature enabled dependencies
52-
cargo_metadata = { version = "0.17.0", optional = true }
52+
cargo_metadata = { version = "0.18.0", optional = true }
5353
syn = { workspace = true, optional = true }
5454

5555
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]

ethers-core/src/types/transaction/eip2718.rs

+37-41
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,7 @@ use serde::{Deserialize, Serialize};
1414
use thiserror::Error;
1515

1616
#[cfg(feature = "optimism")]
17-
use super::optimism_deposited::{
18-
OptimismDepositedRequestError, OptimismDepositedTransactionRequest,
19-
};
17+
use super::optimism::{DepositTransaction, DepositTransactionError};
2018

2119
/// The TypedTransaction enum represents all Ethereum transaction types.
2220
///
@@ -45,7 +43,7 @@ pub enum TypedTransaction {
4543
// 0x7E
4644
#[cfg(feature = "optimism")]
4745
#[serde(rename = "0x7E")]
48-
OptimismDeposited(OptimismDepositedTransactionRequest),
46+
DepositTransaction(DepositTransaction),
4947
}
5048

5149
/// An error involving a typed transaction request.
@@ -63,7 +61,7 @@ pub enum TypedTransactionError {
6361
/// When decoding a signed Optimism Deposited transaction
6462
#[cfg(feature = "optimism")]
6563
#[error(transparent)]
66-
OptimismDepositedError(#[from] OptimismDepositedRequestError),
64+
DepositTransactionError(#[from] DepositTransactionError),
6765
/// Error decoding the transaction type from the transaction's RLP encoding
6866
#[error(transparent)]
6967
TypeDecodingError(#[from] rlp::DecoderError),
@@ -98,7 +96,7 @@ impl TypedTransaction {
9896
Eip2930(inner) => inner.tx.from.as_ref(),
9997
Eip1559(inner) => inner.from.as_ref(),
10098
#[cfg(feature = "optimism")]
101-
OptimismDeposited(inner) => inner.tx.from.as_ref(),
99+
DepositTransaction(inner) => inner.tx.from.as_ref(),
102100
}
103101
}
104102

@@ -108,7 +106,7 @@ impl TypedTransaction {
108106
Eip2930(inner) => inner.tx.from = Some(from),
109107
Eip1559(inner) => inner.from = Some(from),
110108
#[cfg(feature = "optimism")]
111-
OptimismDeposited(inner) => inner.tx.from = Some(from),
109+
DepositTransaction(inner) => inner.tx.from = Some(from),
112110
};
113111
self
114112
}
@@ -119,7 +117,7 @@ impl TypedTransaction {
119117
Eip2930(inner) => inner.tx.to.as_ref(),
120118
Eip1559(inner) => inner.to.as_ref(),
121119
#[cfg(feature = "optimism")]
122-
OptimismDeposited(inner) => inner.tx.to.as_ref(),
120+
DepositTransaction(inner) => inner.tx.to.as_ref(),
123121
}
124122
}
125123

@@ -134,7 +132,7 @@ impl TypedTransaction {
134132
Eip2930(inner) => inner.tx.to = Some(to),
135133
Eip1559(inner) => inner.to = Some(to),
136134
#[cfg(feature = "optimism")]
137-
OptimismDeposited(inner) => inner.tx.to = Some(to),
135+
DepositTransaction(inner) => inner.tx.to = Some(to),
138136
};
139137
self
140138
}
@@ -145,7 +143,7 @@ impl TypedTransaction {
145143
Eip2930(inner) => inner.tx.nonce.as_ref(),
146144
Eip1559(inner) => inner.nonce.as_ref(),
147145
#[cfg(feature = "optimism")]
148-
OptimismDeposited(inner) => inner.tx.nonce.as_ref(),
146+
DepositTransaction(inner) => inner.tx.nonce.as_ref(),
149147
}
150148
}
151149

@@ -156,7 +154,7 @@ impl TypedTransaction {
156154
Eip2930(inner) => inner.tx.nonce = Some(nonce),
157155
Eip1559(inner) => inner.nonce = Some(nonce),
158156
#[cfg(feature = "optimism")]
159-
OptimismDeposited(inner) => inner.tx.nonce = Some(nonce),
157+
DepositTransaction(inner) => inner.tx.nonce = Some(nonce),
160158
};
161159
self
162160
}
@@ -167,7 +165,7 @@ impl TypedTransaction {
167165
Eip2930(inner) => inner.tx.value.as_ref(),
168166
Eip1559(inner) => inner.value.as_ref(),
169167
#[cfg(feature = "optimism")]
170-
OptimismDeposited(inner) => inner.tx.value.as_ref(),
168+
DepositTransaction(inner) => inner.tx.value.as_ref(),
171169
}
172170
}
173171

@@ -178,7 +176,7 @@ impl TypedTransaction {
178176
Eip2930(inner) => inner.tx.value = Some(value),
179177
Eip1559(inner) => inner.value = Some(value),
180178
#[cfg(feature = "optimism")]
181-
OptimismDeposited(inner) => inner.tx.value = Some(value),
179+
DepositTransaction(inner) => inner.tx.value = Some(value),
182180
};
183181
self
184182
}
@@ -189,7 +187,7 @@ impl TypedTransaction {
189187
Eip2930(inner) => inner.tx.gas.as_ref(),
190188
Eip1559(inner) => inner.gas.as_ref(),
191189
#[cfg(feature = "optimism")]
192-
OptimismDeposited(inner) => inner.tx.gas.as_ref(),
190+
DepositTransaction(inner) => inner.tx.gas.as_ref(),
193191
}
194192
}
195193

@@ -199,7 +197,7 @@ impl TypedTransaction {
199197
Eip2930(inner) => &mut inner.tx.gas,
200198
Eip1559(inner) => &mut inner.gas,
201199
#[cfg(feature = "optimism")]
202-
OptimismDeposited(inner) => &mut inner.tx.gas,
200+
DepositTransaction(inner) => &mut inner.tx.gas,
203201
}
204202
}
205203

@@ -210,7 +208,7 @@ impl TypedTransaction {
210208
Eip2930(inner) => inner.tx.gas = Some(gas),
211209
Eip1559(inner) => inner.gas = Some(gas),
212210
#[cfg(feature = "optimism")]
213-
OptimismDeposited(inner) => inner.tx.gas = Some(gas),
211+
DepositTransaction(inner) => inner.tx.gas = Some(gas),
214212
};
215213
self
216214
}
@@ -228,7 +226,7 @@ impl TypedTransaction {
228226
}
229227
}
230228
#[cfg(feature = "optimism")]
231-
OptimismDeposited(inner) => inner.tx.gas_price,
229+
DepositTransaction(inner) => inner.tx.gas_price,
232230
}
233231
}
234232

@@ -242,7 +240,7 @@ impl TypedTransaction {
242240
inner.max_priority_fee_per_gas = Some(gas_price);
243241
}
244242
#[cfg(feature = "optimism")]
245-
OptimismDeposited(inner) => inner.tx.gas_price = Some(gas_price),
243+
DepositTransaction(inner) => inner.tx.gas_price = Some(gas_price),
246244
};
247245
self
248246
}
@@ -253,7 +251,7 @@ impl TypedTransaction {
253251
Eip2930(inner) => inner.tx.chain_id,
254252
Eip1559(inner) => inner.chain_id,
255253
#[cfg(feature = "optimism")]
256-
OptimismDeposited(inner) => inner.tx.chain_id,
254+
DepositTransaction(inner) => inner.tx.chain_id,
257255
}
258256
}
259257

@@ -264,7 +262,7 @@ impl TypedTransaction {
264262
Eip2930(inner) => inner.tx.chain_id = Some(chain_id),
265263
Eip1559(inner) => inner.chain_id = Some(chain_id),
266264
#[cfg(feature = "optimism")]
267-
OptimismDeposited(inner) => inner.tx.chain_id = Some(chain_id),
265+
DepositTransaction(inner) => inner.tx.chain_id = Some(chain_id),
268266
};
269267
self
270268
}
@@ -275,7 +273,7 @@ impl TypedTransaction {
275273
Eip2930(inner) => inner.tx.data.as_ref(),
276274
Eip1559(inner) => inner.data.as_ref(),
277275
#[cfg(feature = "optimism")]
278-
OptimismDeposited(inner) => inner.tx.data.as_ref(),
276+
DepositTransaction(inner) => inner.tx.data.as_ref(),
279277
}
280278
}
281279

@@ -285,7 +283,7 @@ impl TypedTransaction {
285283
Eip2930(inner) => Some(&inner.access_list),
286284
Eip1559(inner) => Some(&inner.access_list),
287285
#[cfg(feature = "optimism")]
288-
OptimismDeposited(_) => None,
286+
DepositTransaction(_) => None,
289287
}
290288
}
291289

@@ -295,7 +293,7 @@ impl TypedTransaction {
295293
Eip2930(inner) => inner.access_list = access_list,
296294
Eip1559(inner) => inner.access_list = access_list,
297295
#[cfg(feature = "optimism")]
298-
OptimismDeposited(_) => {}
296+
DepositTransaction(_) => {}
299297
};
300298
self
301299
}
@@ -306,7 +304,7 @@ impl TypedTransaction {
306304
Eip2930(inner) => inner.tx.data = Some(data),
307305
Eip1559(inner) => inner.data = Some(data),
308306
#[cfg(feature = "optimism")]
309-
OptimismDeposited(inner) => inner.tx.data = Some(data),
307+
DepositTransaction(inner) => inner.tx.data = Some(data),
310308
};
311309
self
312310
}
@@ -326,7 +324,7 @@ impl TypedTransaction {
326324
encoded.extend_from_slice(inner.rlp_signed(signature).as_ref());
327325
}
328326
#[cfg(feature = "optimism")]
329-
OptimismDeposited(inner) => {
327+
DepositTransaction(inner) => {
330328
encoded.extend_from_slice(&[0x7E]);
331329
encoded.extend_from_slice(inner.rlp().as_ref());
332330
}
@@ -349,7 +347,7 @@ impl TypedTransaction {
349347
encoded.extend_from_slice(inner.rlp().as_ref());
350348
}
351349
#[cfg(feature = "optimism")]
352-
OptimismDeposited(inner) => {
350+
DepositTransaction(inner) => {
353351
encoded.extend_from_slice(&[0x7E]);
354352
encoded.extend_from_slice(inner.rlp().as_ref());
355353
}
@@ -407,8 +405,8 @@ impl TypedTransaction {
407405
#[cfg(feature = "optimism")]
408406
if first == 0x7E {
409407
// Optimism Deposited (0x7E)
410-
let decoded_request = OptimismDepositedTransactionRequest::decode_signed_rlp(&rest)?;
411-
return Ok((Self::OptimismDeposited(decoded_request.0), decoded_request.1))
408+
let decoded_request = DepositTransaction::decode_signed_rlp(&rest)?;
409+
return Ok((Self::DepositTransaction(decoded_request.0), decoded_request.1))
412410
}
413411

414412
Err(rlp::DecoderError::Custom("invalid tx type").into())
@@ -438,7 +436,7 @@ impl Decodable for TypedTransaction {
438436
#[cfg(feature = "optimism")]
439437
Some(x) if x == U64::from(0x7E) => {
440438
// Optimism Deposited (0x7E)
441-
Ok(Self::OptimismDeposited(OptimismDepositedTransactionRequest::decode(&rest)?))
439+
Ok(Self::DepositTransaction(DepositTransaction::decode(&rest)?))
442440
}
443441
_ => {
444442
// Legacy (0x00)
@@ -468,9 +466,9 @@ impl From<Eip1559TransactionRequest> for TypedTransaction {
468466
}
469467

470468
#[cfg(feature = "optimism")]
471-
impl From<OptimismDepositedTransactionRequest> for TypedTransaction {
472-
fn from(src: OptimismDepositedTransactionRequest) -> TypedTransaction {
473-
TypedTransaction::OptimismDeposited(src)
469+
impl From<DepositTransaction> for TypedTransaction {
470+
fn from(src: DepositTransaction) -> TypedTransaction {
471+
TypedTransaction::DepositTransaction(src)
474472
}
475473
}
476474

@@ -490,7 +488,7 @@ impl From<&Transaction> for TypedTransaction {
490488
#[cfg(feature = "optimism")]
491489
// Optimism Deposited (0x7E)
492490
Some(x) if x == U64::from(0x7E) => {
493-
let request: OptimismDepositedTransactionRequest = tx.into();
491+
let request: DepositTransaction = tx.into();
494492
request.into()
495493
}
496494
// Legacy (0x00)
@@ -522,9 +520,9 @@ impl TypedTransaction {
522520
}
523521
}
524522
#[cfg(feature = "optimism")]
525-
pub fn as_optimism_deposited_ref(&self) -> Option<&OptimismDepositedTransactionRequest> {
523+
pub fn as_optimism_deposited_ref(&self) -> Option<&DepositTransaction> {
526524
match self {
527-
OptimismDeposited(tx) => Some(tx),
525+
DepositTransaction(tx) => Some(tx),
528526
_ => None,
529527
}
530528
}
@@ -548,11 +546,9 @@ impl TypedTransaction {
548546
}
549547
}
550548
#[cfg(feature = "optimism")]
551-
pub fn as_optimism_deposited_mut(
552-
&mut self,
553-
) -> Option<&mut OptimismDepositedTransactionRequest> {
549+
pub fn as_optimism_deposited_mut(&mut self) -> Option<&mut DepositTransaction> {
554550
match self {
555-
OptimismDeposited(tx) => Some(tx),
551+
DepositTransaction(tx) => Some(tx),
556552
_ => None,
557553
}
558554
}
@@ -608,7 +604,7 @@ impl TypedTransaction {
608604
gateway_fee: None,
609605
},
610606
#[cfg(feature = "optimism")]
611-
OptimismDeposited(tx) => tx.tx,
607+
DepositTransaction(tx) => tx.tx,
612608
}
613609
}
614610
}
@@ -649,7 +645,7 @@ impl TypedTransaction {
649645
access_list,
650646
},
651647
#[cfg(feature = "optimism")]
652-
OptimismDeposited(tx) => Eip2930TransactionRequest { tx: tx.tx, access_list },
648+
DepositTransaction(tx) => Eip2930TransactionRequest { tx: tx.tx, access_list },
653649
}
654650
}
655651
}

ethers-core/src/types/transaction/mod.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ pub mod eip2930;
88
pub mod conditional;
99

1010
#[cfg(feature = "optimism")]
11-
pub mod optimism_deposited;
11+
pub mod optimism;
1212

1313
pub mod eip712;
1414

ethers-core/src/types/transaction/optimism_deposited.rs ethers-core/src/types/transaction/optimism.rs

+9-11
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,15 @@ const NUM_TX_FIELDS: usize = 8;
88

99
/// An error involving an OptimismDeposited transaction request.
1010
#[derive(Debug, Error)]
11-
pub enum OptimismDepositedRequestError {
11+
pub enum DepositTransactionError {
1212
/// When decoding a transaction request from RLP
1313
#[error(transparent)]
1414
DecodingError(#[from] rlp::DecoderError),
1515
}
1616

1717
/// Parameters for sending a transaction
1818
#[derive(Clone, Default, Serialize, Deserialize, PartialEq, Eq, Debug)]
19-
pub struct OptimismDepositedTransactionRequest {
19+
pub struct DepositTransaction {
2020
#[serde(flatten)]
2121
pub tx: TransactionRequest,
2222

@@ -34,7 +34,7 @@ pub struct OptimismDepositedTransactionRequest {
3434
pub is_system_tx: Option<bool>,
3535
}
3636

37-
impl OptimismDepositedTransactionRequest {
37+
impl DepositTransaction {
3838
pub fn new(
3939
tx: TransactionRequest,
4040
source_hash: Option<H256>,
@@ -90,9 +90,7 @@ impl OptimismDepositedTransactionRequest {
9090

9191
/// Decodes the given RLP into a transaction
9292
/// Note: this transaction does not have a signature
93-
pub fn decode_signed_rlp(
94-
rlp: &rlp::Rlp,
95-
) -> Result<(Self, Signature), OptimismDepositedRequestError> {
93+
pub fn decode_signed_rlp(rlp: &rlp::Rlp) -> Result<(Self, Signature), DepositTransactionError> {
9694
let mut offset = 0;
9795
let txn = Self::decode_base_rlp(rlp, &mut offset)?;
9896
let sig = Signature { r: 0.into(), s: 0.into(), v: 0 };
@@ -102,16 +100,16 @@ impl OptimismDepositedTransactionRequest {
102100
}
103101

104102
/// Get a Eip2930TransactionRequest from a rlp encoded byte stream
105-
impl Decodable for OptimismDepositedTransactionRequest {
103+
impl Decodable for DepositTransaction {
106104
fn decode(rlp: &rlp::Rlp) -> Result<Self, rlp::DecoderError> {
107105
Self::decode_base_rlp(rlp, &mut 0)
108106
}
109107
}
110108

111109
/// Get an OptimismDeposited transaction request from a Transaction
112-
impl From<&Transaction> for OptimismDepositedTransactionRequest {
113-
fn from(tx: &Transaction) -> OptimismDepositedTransactionRequest {
114-
OptimismDepositedTransactionRequest {
110+
impl From<&Transaction> for DepositTransaction {
111+
fn from(tx: &Transaction) -> DepositTransaction {
112+
DepositTransaction {
115113
tx: tx.into(),
116114
source_hash: tx.source_hash,
117115
mint: tx.mint,
@@ -173,7 +171,7 @@ mod test {
173171
let encoded = Bytes::from(hex::decode("7ef90159a0a8157ccf61bcdfbcb74a84ec1262e62644dd1e7e3614abcbd8db0c99a60049fc94deaddeaddeaddeaddeaddeaddeaddeaddead00019442000000000000000000000000000000000000158080830f424080b90104015d8eb90000000000000000000000000000000000000000000000000000000000878c1c00000000000000000000000000000000000000000000000000000000644662bc0000000000000000000000000000000000000000000000000000001ee24fba17b7e19cc10812911dfa8a438e0a81a9933f843aa5b528899b8d9e221b649ae0df00000000000000000000000000000000000000000000000000000000000000060000000000000000000000007431310e026b69bfc676c0013e12a1a11411eec9000000000000000000000000000000000000000000000000000000000000083400000000000000000000000000000000000000000000000000000000000f4240").unwrap());
174172
let tx = TypedTransaction::decode(&rlp::Rlp::new(&encoded)).unwrap();
175173

176-
assert!(matches!(tx, TypedTransaction::OptimismDeposited(_)));
174+
assert!(matches!(tx, TypedTransaction::DepositTransaction(_)));
177175

178176
assert_eq!(tx.gas(), Some(&U256::from(1000000u64)));
179177
assert_eq!(tx.gas_price(), None);

0 commit comments

Comments
 (0)