Skip to content

Commit c553778

Browse files
committed
fix compilation issues
1 parent bb88ab9 commit c553778

File tree

4 files changed

+33
-22
lines changed

4 files changed

+33
-22
lines changed

crates/cartridge/src/paymaster/layer.rs

Lines changed: 25 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,6 @@ where
121121
let params = request.params();
122122

123123
if params.is_object() {
124-
println!("params is object: {:?}", params);
125124
match params.parse() {
126125
Ok(p) => Some(p),
127126
Err(..) => {
@@ -130,7 +129,6 @@ where
130129
}
131130
}
132131
} else {
133-
println!("params is sequence: {:?}", params);
134132
let mut seq = params.sequence();
135133

136134
let address_result: Result<ContractAddress, _> = seq.next();
@@ -153,6 +151,24 @@ where
153151
}
154152
}
155153

154+
fn build_new_outside_execution_request<'a>(
155+
request: &Request<'a>,
156+
address: ContractAddress,
157+
outside_execution: OutsideExecution,
158+
signature: Vec<Felt>,
159+
) -> Request<'a> {
160+
let mut new_request = request.clone();
161+
162+
let mut new_params = jsonrpsee::core::params::ArrayParams::new();
163+
new_params.insert(address).unwrap();
164+
new_params.insert(outside_execution).unwrap();
165+
new_params.insert(signature).unwrap();
166+
167+
let new_params = new_params.to_rpc_params().unwrap();
168+
new_request.params = new_params.map(Cow::Owned);
169+
new_request
170+
}
171+
156172
/// Build a new estimate fee request with the updated transactions.
157173
fn build_new_estimate_fee_request<'a>(
158174
request: &Request<'a>,
@@ -233,7 +249,7 @@ where
233249
trace!(
234250
target: "cartridge",
235251
nb_of_extra_txs = nb_of_extra_txs,
236-
nb_of_estimate_fees = estimate_fees.len(),
252+
nb_of_estimate_fees = estimate_fees.len(),
237253
"Removing extra transactions from estimate fees response",
238254
);
239255

@@ -281,17 +297,12 @@ where
281297
};
282298

283299
if let Some((outside_execution, signature)) = updated_tx {
284-
let mut new_request = request.clone();
285-
let new_params = {
286-
let mut params = jsonrpsee::core::params::ArrayParams::new();
287-
params.insert(controller_address).unwrap();
288-
params.insert(outside_execution).unwrap();
289-
params.insert(signature).unwrap();
290-
params
291-
};
292-
293-
let params = new_params.to_rpc_params().unwrap();
294-
new_request.params = params.map(Cow::Owned);
300+
let new_request = Self::build_new_outside_execution_request(
301+
&request,
302+
controller_address,
303+
outside_execution,
304+
signature,
305+
);
295306

296307
trace!(target: "cartridge", "Call outside_execution endpoint with the updated transaction");
297308
return service.call(new_request).await;

crates/cartridge/src/paymaster/mod.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,14 +61,15 @@ use starknet::signers::{LocalWallet, Signer, SigningKey};
6161
use starknet_crypto::pedersen_hash;
6262
use tracing::{debug, trace};
6363

64+
use crate::utils::get_execute_from_outside_call;
65+
6466
pub mod layer;
6567

6668
#[cfg(test)]
6769
mod tests;
6870

6971
use crate::rpc::types::{
70-
Call as OutsideExecutionCall, NonceChannel, OutsideExecution, OutsideExecutionV2,
71-
OutsideExecutionV3,
72+
Call as OutsideExecutionCall, NonceChannel, OutsideExecution, OutsideExecutionV3,
7273
};
7374
use crate::utils::encode_calls;
7475
use crate::vrf::{VrfContext, CARTRIDGE_VRF_CLASS_HASH, CARTRIDGE_VRF_SALT};

crates/cartridge/src/rpc/mod.rs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ use std::future::Future;
22
use std::sync::Arc;
33

44
use anyhow::anyhow;
5-
use cainome::cairo_serde::CairoSerde;
65
use jsonrpsee::core::{async_trait, RpcResult};
76
use katana_core::backend::storage::ProviderRO;
87
use katana_core::backend::Backend;
@@ -19,7 +18,6 @@ use katana_provider::ProviderFactory;
1918
use katana_rpc_api::error::starknet::StarknetApiError;
2019
use katana_rpc_types::broadcasted::AddInvokeTransactionResponse;
2120
use katana_tasks::{Result as TaskResult, TaskSpawner};
22-
use starknet::macros::selector;
2321
use starknet::signers::{LocalWallet, Signer, SigningKey};
2422
use tracing::debug;
2523
use types::OutsideExecution;
@@ -29,8 +27,7 @@ pub mod types;
2927

3028
pub use api::*;
3129

32-
use crate::rpc::types::Call;
33-
use crate::utils::encode_calls;
30+
use crate::utils::{encode_calls, get_execute_from_outside_call};
3431

3532
#[allow(missing_debug_implementations)]
3633
pub struct CartridgeApi<EF: ExecutorFactory, PF: ProviderFactory> {

crates/cartridge/src/utils.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1-
use katana_primitives::Felt;
1+
use cainome::cairo_serde::CairoSerde;
2+
use katana_primitives::{ContractAddress, Felt};
3+
use starknet::macros::selector;
24

3-
use crate::rpc::types::Call;
5+
use crate::rpc::types::{Call, OutsideExecution};
46

57
/// Encodes the given calls into a vector of Felt values (New encoding, cairo 1),
68
/// since controller accounts are Cairo 1 contracts.

0 commit comments

Comments
 (0)